浮点数保存代码
发布时间:2007/4/23 0:00:00 访问次数:1963
;程序说明:浮点数变为压缩BCD码,保存在以数组中
; 第1字节的位7:0正,1负.位6:0(位5--0代表小数点前的位数),1(位5--0代表小数
点后0的位数)
; 2--4字节为压缩BCD码,有效位为7位,3个半字节,最后半个字节请使用者自行放
弃
; 程序占用资源PSW,A,B,DPTR,R0--R7,SP深度6,RAM 5个放数据
; keil 兼容,调用KEIL 的FPMUL子程序。
;程序作者:*************陈远征**************
;目 的:追求更快的执行速度,与最小的程序代码
;发布时间:2003--05--08
;编写背景:精通汇编,研究C51半个月。身感C51方便中的不便
; 研究了几种汇编及KEIL的浮点算法,特做此程序.
;声 明:转载时请保留以上的信息
C程序:
extern float ftod(float i);
unsigned char cyz[5];
main(){
float i=1234.567;
ftod(i);
while(1);
}
汇编程序:
PUBLIC _FTOD ;程序段
FTODP SEGMENT CODE ;入口地址
RSEG FTODP ;程序段
EXTRN CODE (?C?FPMUL)
EXTRN DATA (CYZ)
_FTOD: ;参数传递在R4--R7中,浮点数IEEE标准seeeeeee emmmmmmm
mmmmmmmm mmmmmmmm
FTOD:
MOV A,R4 ;保存数符
RLC A
CLR A
RRC A
MOV CYZ,A
MOV A,R4 ;取绝对值
CLR ACC.7
MOV R4,A
ORL A,R5
JNZ FCMP_1E10
MOV CYZ,#0 ;数值为0
MOV CYZ+1,#0
MOV CYZ+2,#0
MOV CYZ+3,#0
MOV CYZ+4,#0
RET
FCMP_1E10:
MOV DPTR,#YUANZHENG_DE10
LCALL FR0DPTR ;数值装入R0--R3
&n
;程序说明:浮点数变为压缩BCD码,保存在以数组中
; 第1字节的位7:0正,1负.位6:0(位5--0代表小数点前的位数),1(位5--0代表小数
点后0的位数)
; 2--4字节为压缩BCD码,有效位为7位,3个半字节,最后半个字节请使用者自行放
弃
; 程序占用资源PSW,A,B,DPTR,R0--R7,SP深度6,RAM 5个放数据
; keil 兼容,调用KEIL 的FPMUL子程序。
;程序作者:*************陈远征**************
;目 的:追求更快的执行速度,与最小的程序代码
;发布时间:2003--05--08
;编写背景:精通汇编,研究C51半个月。身感C51方便中的不便
; 研究了几种汇编及KEIL的浮点算法,特做此程序.
;声 明:转载时请保留以上的信息
C程序:
extern float ftod(float i);
unsigned char cyz[5];
main(){
float i=1234.567;
ftod(i);
while(1);
}
汇编程序:
PUBLIC _FTOD ;程序段
FTODP SEGMENT CODE ;入口地址
RSEG FTODP ;程序段
EXTRN CODE (?C?FPMUL)
EXTRN DATA (CYZ)
_FTOD: ;参数传递在R4--R7中,浮点数IEEE标准seeeeeee emmmmmmm
mmmmmmmm mmmmmmmm
FTOD:
MOV A,R4 ;保存数符
RLC A
CLR A
RRC A
MOV CYZ,A
MOV A,R4 ;取绝对值
CLR ACC.7
MOV R4,A
ORL A,R5
JNZ FCMP_1E10
MOV CYZ,#0 ;数值为0
MOV CYZ+1,#0
MOV CYZ+2,#0
MOV CYZ+3,#0
MOV CYZ+4,#0
RET
FCMP_1E10:
MOV DPTR,#YUANZHENG_DE10
LCALL FR0DPTR ;数值装入R0--R3
&n
上一篇:AT89S51是什么?
热门点击
- 8051单片机家族数据手册链接大全
- dsPIC30F6010单片机的原理及应用
- 一种通用的嵌入式系统ISP方法
- 浮点数保存代码
- 基于FPGA/CPLD和USB技术的无损图像
- 数字显示器仍需处理模拟信号
- 常用PIC系列8位单片机芯片引脚符号的功能
- PIC系列单片机的伪指令
- 利用单片机PWM信号进行舵机控制
- 产生低失真正弦波的CMOS六角反相器
推荐技术资料
- 硬盘式MP3播放器终级改
- 一次偶然的机会我结识了NE0 2511,那是一个远方的... [详细]