跟同学起分歧了,简单的小问题,关于有符号数的转换。

koocye 2008-11-18 03:00:25
俩十六进制数F9和08,要求求和,判断状态寄存器的溢出标志位的状态.当把两个数看做无符号数的时候,没有分歧,换算成10进制是249+8=257,正好有进位,cf=1.

问题出现在看做有符号数的时候,这个F9是应该用补码算的,结果是-7?
还是直接把11111001(F9)的最高位看做符号,剩下的数是79,所以结果是-79?

有点糊涂了,初学者,谢谢
...全文
65 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
koocye 2008-11-18
  • 打赏
  • 举报
回复
谢谢楼上两位的回答
xiaopoy 2008-11-18
  • 打赏
  • 举报
回复
是按照补码的
sign bit和是否按照补码没有关系纳。
killbug2004 2008-11-18
  • 打赏
  • 举报
回复
11111001(F9),当成有符号数,高位为1,说明是负数,这是一个负数的补码
计算负数的补码lz会把,那么这个补码表示的负数应该不是-79,是
-7,当有符号数算,表示补码

21,459

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧