微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

专门用于AL寄存器的编码?

如何解决专门用于AL寄存器的编码?

与其他寄存器不同,我注意到做类似add $1,%al的事情与其他(8位)寄存器的编码方式大不相同。例如:

add $3,%al
add $3,%bl
add $3,%cl
add $3,%dl

翻译为:

0x0000000000401000  04 03     ? add    $0x3,%al
0x0000000000401002  80 c3 03  ? add    $0x3,%bl
0x0000000000401005  80 c1 03  ? add    $0x3,%cl
0x0000000000401008  80 c2 03  ? add    $0x3,%dl

我在previous question中经历了add-imm8的编码,但是add $3,%al似乎与之完全矛盾(没有mod-reg-rm字节吗?)。这是旧版指令还是其他指令,或者为什么它看起来与其他指令有很大不同?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。