如何在8086寄存器中存储小数部分?例如,
format()
答案 0 :(得分:0)
你不能直接这样做。 8086指令集非常有限,没有浮点运算。您所能做的就是定义字节,操作字节,操作寄存器,调用中断。这就是CPU在0
和1
级别的工作方式。尽管我从研究中记得,但我们还没有对花车做过任何事情。如果你不想浮点运算,你必须自己实现它。我无法想象它需要多少行和不眠之夜。
答案 1 :(得分:0)
AX和BX等寄存器可以存储[0,65535]范围内的值。 首先,这会排除0.5或7.25之类的数字,但您可以选择适合您需求的寄存器布局!
您可以选择将整数部分存储在高字节中,并将分数存储在低字节中。现在,只要你记住这个布局,你就可以对这些数字进行所有常规算术。
lib.stdheader.5.strftime = %B %d
现在AX = 07C0h,代表7.75