作业帮 > 数学 > 作业

高分求答题者 补码运算练习

来源:学生作业帮 编辑:作业帮 分类:数学作业 时间:2024/05/18 01:42:53
高分求答题者 补码运算练习
要求用补码计算(F4)-(37)先计算-37的补码,然后计算(F4)+(37)补=?然后和(F4)+(-37)=?的结果比较.
要求写过程和思路
在计算机系统中,数值一律用补码来表示和存储.因为使用补码,可以将符号位和其它位统一处理;同时,减法也可按加法来处理.另外,两个用补码表示的数相加时,如果最高位(符号位)有进位,则进位被舍弃.
数值的补码表示分两种情况:
1、正数的补码与原码相同.如本题的37H,原码为:00110111B,其补码也是:00110111B.
2、负数的补码,符号位为1,其余位为该数绝对值的原码按位取反;然后整个数加1.如-55,+55的原码为:00110111B,符号位置1后:10110111B,其余位按位求反后:11001000B,整体加1后:11001001B,这个就是-55(37H)的补码表示,即-37H的补码是:11001001B.
(37H)补=00110111B,(-37H)补=11001001B.那么,
(F4H)+(37H)补=(F4H)+(37H)原
11110100
00110111
________
00101011
(F4H)+(37H)补=2BH
(F4H)+(-37H)=(F4H)+(-37H)补
11110100
11001001
________
10111101
(F4H)+(-37H)=0BDH
已知一个数的补码,求原码的操作分两种情况:
1、如果补码的符号位为“0”,表示是一个正数,所以补码就是该数的原码.如37H,其补码就是该数的原码:00110111B,也就是十进制的55;2BH,其补码就是该数的原码:00101011B,也就是十进制的43.
2、如果补码的符号位为“1”,表示是一个负数,求原码的操作是:符号位为1,其余各位取反,然后再整个数加1.如0F4H,其原码为:10001100B,也就是十进制的-12;0BDH,其原码为:11000011B,也就是十进制的-67.
如此,就好理解了.
0F4H+37H=2BH,相当于十进制运算表达式:-12+55=43
0F4H-37H=0BDH,相当于十进制运算表达式:-12-55=-67