我想将一个字节从寄存器rdx移到寄存器rbx,如下所示:
mov %rdx , (%rbx,%r15,1)
,其中 rdx包含0x33 ,r15是索引,rbx在开始时包含0。
我尝试过多种方式使用此方法,总是以SIGSEGV错误结束。 最后,我将创建一个rbx寄存器,其中包含一个下一个rdx值的数组
答案 0 :(得分:0)
您可以一次移动一个字节,如下所示:
; Calculate first dl
...
mov %dl,%bl
; Calculate next dl
...
shlq $8,%rbx
mov %dl,%bl
; Calculate next dl
...
shlq $8,%rbx
mov %dl,%bl
等。这假定您需要msb中的第一个字节和lsb中的最后一个字节。收获顺序有点复杂,但并不多。