谁来解释一下汇编中的符号扩展指令
答案:2 悬赏:60 手机版
解决时间 2021-02-01 18:12
- 提问者网友:聂風
- 2021-02-01 02:52
本人正在学习汇编语言,用的书是清华大学出版的《80x86汇编语言程序设计》,关于符号扩展指令是这么描述的: 由于除法指令隐含使用字被除数或双字被除数,所以当被除数为字节或者除数和被除数均为字时,需要在除数操作前扩展被除数,为此8086/8088提供了符号扩展指令 字节转换为字指令:CBW 这条指令把寄存器AL中的符号扩展到寄存器AH。即:若AL的最高有效位为0,则AH=0;若AL得最高有效位为1,则AH=0FFH 例如:MOV AX,3487H ;AX=3487H AH=34H AL=87H CBW ;AH=0FFH AL=87H AX=0FF87H 字转换为双字指令:CWD 把寄存器AX中的符号扩展到寄存器DX,即:若AX的最高有效位为0,则DX=0;若AX的最高有效位为1,则DX=0FFFFH 例如:MOV AX,4567H ;AX=4567H CWD ;AX=4567H DX=0 问题:什么叫最高有效位
最佳答案
- 五星知识达人网友:蕴藏春秋
- 2021-02-01 03:55
比如al = 10000000,这个1所在位是最高位,它的值为1则有效,其他宽度寄存器类推 主要涉及到符号扩展的问题(2的补码里,最高位表符号)
满意请采纳
满意请采纳
全部回答
- 1楼网友:几近狂妄
- 2021-02-01 04:24
就是cbw cwde cdq movzx之类的指令
比如ax = -2
movzx ebx, ax
就是把ax的符号位1,扩展到ebx高16位的每一位,然后把低位赋值为ax
ax = -2 =
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯