汇编语言计算器设计报告.doc

约25页DOC格式手机打开展开

汇编语言计算器设计报告,1.2万字21页摘要: 要求:用16进制的寄存器来实现32位数制的计算.用户输入两个介于-2 ~2 之间的数,经过运算输出它的和,差,积,商和余数.如果溢出要报溢出,除数如果是零,是不允许的. 程序接受用户输入的一串字符的ascii码,然后将其转化成数值,计算完成后,将数值在转化成十进制的ascii码输出,为了减少程序...
编号:10-4101大小:244.00K
分类: 论文>计算机论文

内容介绍

此文档由会员 亚当 发布

1.2万字 21页
摘要:
要求:用16进制的寄存器来实现32位数制的计算.用户输入两个介于-2 ~2 之间的数,经过运算输出它的和,差,积,商和余数.如果溢出要报溢出,除数如果是零,是不允许的.
程序接受用户输入的一串字符的ASCII码,然后将其转化成数值,计算完成后,将数值在转化成十进制的ASCII码输出,为了减少程序的复杂度,将符号保存起来,而计算实际上是按照无符号数来计算的.
输入和加,乘子过程都是书上的例题,而减法只是用加法略加改变得到的.
将十进制的ASCII码转化成数值时,利用十进制的数的ASCII码和数值之间只差一个30H,然后乘以权值后相加就得到了相应的数值了.
将符号依次编号为:++’00H’;+-‘01H’;-+’02H’;--‘03H’来简化运算.
除法利用减法来实现的,被除数减一次除数,将商加1,直到不够减时,得到商和余数.
将数值转化成ASCII码输出是实际上就是ASCII码转数值的逆过程;将数值除以10得到的余数即为个位上的数,再除就得到十位上的数,知道不够除为止.
对数值太大的数的计算用时比较长,但在万数量级上还是感觉不出来的.