REX(Register EXtension) 前缀

本文详细介绍了64位模式下IA-32e模式的REX(Register EXtension)前缀,包括其功能、编码规则、在不同寻址方式中的应用,以及如何影响操作数尺寸和寄存器选择。REX前缀主要用于指定64位寄存器和操作数尺寸,并在控制和调试寄存器的编码中发挥作用。
摘要由CSDN通过智能技术生成

IA-32e模式有两个子模式:

兼容模式:准许传统保护模式软件未修改地在64位系统上运行

64位模式:运行可访问64位地址空间的程序

REX Prefixes

REX前缀是在64位模式下使用的指令前缀。它们的功能为:

1.       指定GPRS和SSH寄存器

2.       指定64位操作数尺寸

3.       指定扩展控制寄存器

在64位模式下不是所有的指令都需要REX前缀。只有在指令使用扩展寄存器或使用64位操作数时需要REX前缀。如果在其没有任何意义时使用REX寄存器,它将被忽略。

每个指令只准许使用一个REX前缀。如果使用REX前缀,它必须位于操作码或转义操作码(escape opcode,OFH)之前并紧挨着操作码或逃避操作码。如果指令使用传统前缀,则传统前缀位于REX前缀之前。指令的最大15字节尺寸限制任然适用带REX前缀的指令。

 

编码

Intel 64 andIA-32指令格式使用经过编码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值