
用哪一种寻址方式的指令执行速度最快
定长指令码格式,立即最快,指令地址码即作数。
变长指令码格式存器寻址方式最快。
因为立即寻址操作数可能很长,取指令时可能需要两次访存。
而寄存器寻址由于寄存器数量不多,所以地址码位数不长,取指令只需一次访存,而寄存器取数速度非常快,所以寄存器寻址最快。
指令寻址方式主要是哪两种
指令寻址方式有两种:顺序寻址方式(按顺序执行)和跳转寻址方式(不按循序进行)。
操作数寻址方式有许多种,例如;立即寻址(地址码字段是立即数本身)、直接寻址(地址码字段是操作数在内存的有效地址)、间接寻址(地址码字段存放的是操作数在内存单元中的地址的地址)、寄存器间接寻址(地址码字段存放的是操作数在寄存器中的地址,该寄存器中存放着有效地址)、变址寻址、基址寻址等等
ARM指令的寻址方式有几种,试分别举例说明
共有9种:1、寄存器寻址 ADD R0,R1,R2 ; R0<--R1+R22、立即寻址 ADD R3,R3,#1 ; R3<--R3+13、寄存器移位寻址 ADD R3,R2,R1,LSL #3 ; R3<--R2+8×R14、寄存器间接寻址 LDR R0,[R1] ; R0<--[R1]5、变址寻址 LDR R0,[R1,R2] ; R0<--[R1+R2]6、多寄存器寻址 LDMIA R1,{R0,R2,R5} ; R0<--[R1], R2<--[R1+4], R5<--[R1+8]7、堆栈寻址 LDMFD SP!,{R1-R7,LR};将数据出栈,放入R1~R7,LR这8个寄存器,同时SP自动更新。
8、块复制寻址 stmia r0!,{r1-r7};将r1-r7的数组保存到以r0开始向上增长的地址空间中9、相对寻址 BL SUBR ; 到SUBR
关于8086寻址方式
8086一共有7种寻址方式~~1 就是 指令中的操作数在操作码的后面 例如 MOV AL,09H2寄存器寻址 指令的操作数存放在寄存器里例如 MOV AX,BX3例如MOV AL,[0005]3MOV AL,[BX]4相对MOV AL,[BX]+1 或是MOV AL,[BX+1]在或是 MOV AL,1[BX]5相对变址寻址MOV AL,[DI]+1.....6基址变址寻址MOV AL,[BX]+[DI]+1.....
指令系统中采用多种不同寻址方式的主要目的是
立即寻址:操作数在指令中 比如MOV AL,12H 12H就是指令寄存器寻址:操作数在寄存器中 比如 MOV AL,BH BH就是一种寄存器,还有像AX,BX,CX,DX.直接寻址:操作数所在存储器的有效地址在指令中,如:MOV AL,[12H] 12H 在括号中寄存器间接寻址:操作数所在存储器的有效地址在指令中的寄存器中,如:MOV AL,[BX](源操作数)
关于指令寻址的一个题目
1:确实是8位,答案有问题吧2:正数的补码就是它的原码,总共是2^10=1024个数,其中包括0,所以是0~1023 负数的补码是按位求反加1,由于要加1,总共是2^10+1=1025个数,也包括0,所以是-1024~0



