movsx-movzx(转)
来源:互联网 发布:欧文总决赛第七战数据 编辑:程序博客网 时间:2024/05/12 21:54
2.5.2.3 符号扩展与零扩展指令
2012-09-29 14:12:46 我来说两句 收藏 我要投稿
本文所属图书 > x86/x64体系探索及编程
本书是对Intel手册所述处理器架构的探索和论证。全书共五大部分,从多个方面对处理器架构相关的知识进行了梳理介绍。书中每个章节都有相应的测试实验,所运行的实验例子都可以在真实的机器上执行。通过阅读本书,… 立即去当当网订购
sign-extend(符号扩展)传送指令有两大类:movsx系列和cbw系列。
在movsx指令里8位的寄存器和内存操作数可以符号扩展到16位、32位及64位寄存器。而16位的寄存器和内存操作数可以符号扩展到32位和64位的寄存器。
movsxd指令将32位的寄存器和内存操作数符号扩展到64位的寄存器,形成了x64体系的全系列符号扩展指令集。
cbw指令族实现了对al/ax/eax/rax寄存器的符号扩展。而cwd指令族将符号扩展到了dx/edx/rdx寄存器上。
int a; /* signed DWORD size */ short b; /* signed WORD size */ a = b; /* sign-extend */
像上面这样的代码,编译器会使用movsx指令进行符号扩展。
movsx eax, word ptr [b] ; WORD sign-extend to DWORD mov [a], eax
zero-extend(零扩展)传送指令movzx在规格上和符号扩展movsx是一样的。
mov ax, 0xb06a
movsx ebx, ax ; ebx = 0xffffb06a
movzx ebx, ax ; ebx = 0x0000b06a
0 0
- movsx-movzx(转)
- MOVSX/MOVZX的解释
- movzx 与 movsx
- movsx 和movzx
- 008-汇编指令MOVSX与MOVZX
- 汇编指令: MOV、MOVSB、MOVSW、MOVSD、MOVSX、MOVZX
- MOVZX
- 汇编MOVSX指令详解
- 汇编MOVSX指令详解
- movsx汇编指令说明
- movsx的Delphi算法实现
- 汇编MOVSX/MOVSZ指令详解
- MOVSX说明:带符号扩展传送指令
- (转)
- (转)
- 中缀转后缀(转)
- 字符转码(转)
- (转) base64转图片
- 效果超酷的textarea的输入字数限提…
- 超链接如何加下划线
- 10 个强大的开源 Web 流量分析工具
- github winos-macos教程详解
- 编写跨浏览器兼容的 CSS 代码的金…
- movsx-movzx(转)
- 跨浏览器兼容测试8大利器
- 如何把一长串数字分位显示?
- maven命令创建java和javaweb工程
- Windows Vista/7 下取消睡眠状态
- 摇一摇手机控制手机录音功能
- 字符串 全组合
- 标签式的菜单
- 网络请求报错