Assembly 汇编-从寄存器中提取字段

Assembly 汇编-从寄存器中提取字段,assembly,sparc,Assembly,Sparc,我有一个装配任务,在尝试解决问题的逻辑时遇到了问题。我希望有人能帮我开始这项工作。程序必须用汇编代码编写 问题: 写入汇编程序以从寄存器%l0中提取字段。 最低有效位的位置将在寄存器%l2中指定 以及寄存器%l3中字段中的位数。 执行程序的结果是从寄存器中提取指定的字段 %l0,将字段存储在%l1中 提示:使用and、or等逻辑运算符和位移位运算符 请使用以下宏定义: 定义,l0!号码 定义字段r,l1!提取字段 定义开始,l2!字段的最低有效位 定义第三层,第三层!视场宽度 定义任务,l4!位

我有一个装配任务,在尝试解决问题的逻辑时遇到了问题。我希望有人能帮我开始这项工作。程序必须用汇编代码编写

问题:

写入汇编程序以从寄存器%l0中提取字段。 最低有效位的位置将在寄存器%l2中指定 以及寄存器%l3中字段中的位数。 执行程序的结果是从寄存器中提取指定的字段 %l0,将字段存储在%l1中

提示:使用and、or等逻辑运算符和位移位运算符

请使用以下宏定义:

定义,l0!号码 定义字段r,l1!提取字段 定义开始,l2!字段的最低有效位 定义第三层,第三层!视场宽度 定义任务,l4!位掩码

例1

mov 0xfff,%num\u r mov 2,组织百分比 移动3%,宽度\u r


回答:111这是十进制的7

您忘了提到体系结构。不管怎样,正如提示所说,只需向左移位以消除不必要的高位,然后向右移位以消除不必要的低位并对齐结果。SPARC体系结构。我试试看。谢谢