对于小数的运算c语言可以用浮点运算,那汇编语言如何进行小数运算?

 我来答
百度网友1f7aaa0
2011-01-10 · TA获得超过216个赞
知道小有建树答主
回答量:240
采纳率:0%
帮助的人:166万
展开全部
汇编有浮点运算的指令
st(i):代表浮点寄存器,所说的出栈、入栈操作都是对st(i)的影响
src,dst,dest,op等都是指指令的操作数,src表示源操作数,dst/dest表示目的操作数
mem8,mem16,mem32,mem64,mem80等表示是内存操作数,后面的数值表示该操作数的内存位数(8位为一字节)
x <- y 表示将y的值放入x,例st(0) <- st(0) - st(1)表示将st(0)-st(1)的值放入浮点寄存器st(0)

1. 数据传递和对常量的操作指令
指令格式 指令含义 执行的操作
FLD src 装入实数到st(0) st(0) <- src (mem32/mem64/mem80)
FILD src 装入整数到st(0) st(0) <- src (mem16/mem32/mem64)
FBLD src 装入BCD数到st(0) st(0) <- src (mem80)

FLDZ 将0.0装入st(0) st(0) <- 0.0
FLD1 将1.0装入st(0) st(0) <- 1.0
FLDPI 将pi装入st(0) st(0) <- ?(ie, pi)
FLDL2T 将log2(10)装入st(0) st(0) <- log2(10)
FLDL2E 将log2(e)装入st(0) st(0) <- log2(e)
FLDLG2 将log10(2)装入st(0) st(0) <- log10(2)
FLDLN2 将loge(2)装入st(0) st(0) <- loge(2)

FST dest 保存实数st(0)到dest dest <- st(0) (mem32/mem64)
FSTP dest dest <- st(0) (mem32/mem64/mem80);然后再执行一次出栈操作
FIST dest 将st(0)以整数保存到dest dest <- st(0) (mem32/mem64)
FISTP dest dest <- st(0) (mem16/mem32/mem64);然后再执行一次出栈操作
FBST dest 将st(0)以BCD保存到dest dest <- st(0) (mem80)
FBSTP dest dest<- st(0) (mem80);然后再执行一次出栈操作
折乐贤qK
2017-06-28
知道答主
回答量:61
采纳率:0%
帮助的人:13.3万
展开全部
51单片机硬件没有浮点数运算指令,如果是汇编,需要自己使用一段汇编指令序列来完成浮点数运算,如果是C语言就比较容易了,编译器会自动做处理,但是单片机做浮点运算开销是很大的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
中考试题库
2017-06-29 · TA获得超过381个赞
知道小有建树答主
回答量:310
采纳率:33%
帮助的人:150万
展开全部
汇编语言有专用的浮点运算指令,指令内隐含了数据的长度,所以,只要给定了指令与操作数的地址,指令就能正确计算
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
大炮1980

2017-06-27 · TA获得超过2.1万个赞
知道大有可为答主
回答量:1.3万
采纳率:78%
帮助的人:1888万
展开全部
如果没有单指令计算功能,可以找一个浮点数计算的例程进行修改添加。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
天池血崩
2011-01-10 · TA获得超过3698个赞
知道小有建树答主
回答量:202
采纳率:0%
帮助的人:268万
展开全部
像Fmul,Fadd之类的。自己百度“浮点运算指令”体会体会,光空谈没用。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式