汇编语言中,mov al,10110001b(有符号还是无符号数) mov dl,01001010b 执行sub al,dl的结果应该是怎样

[复制链接]
查看11 | 回复3 | 2013-5-20 17:30:20 | 显示全部楼层 |阅读模式
不论是有符号还是无符号结果都是0110 0111b。但是有符号和无符号的运算会影响标志寄存器。因为有符号的时候,al是8位,表示范围是 -127~127,当al位10110011b做有符号的时候,10进制为-79,dl始终为74,-79-74是-153,超出8位的存储范围,它的二进制是1 0110 0111b,但是al只有8位,所以无法存放,这样标志寄存器的of会变为1,即表示有符号运算溢出。所以不论是有符号还是无符号,al存放都是 0110 0111b。...
回复

使用道具 举报

千问 | 2013-5-20 17:30:20 | 显示全部楼层
有符号与无符号有区别吗?10110001b,不管有符号数无符号就是一个无符号数。结果就是1100111b...
回复

使用道具 举报

千问 | 2013-5-20 17:30:20 | 显示全部楼层
算数运算不会区分有符号数和无符号数。在条件转移指令时才会区分。...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行