GNU彙編 偽指令
阿新 • • 發佈:2018-12-25
偽指令 本身並沒有所對應的機器碼
它只是在編譯的時候起作用,或者轉換為其他的實際指令來執行
global
ascii
byte
word
data
equ
align
@ 下面的例子是在資料段存放資料
.section .data
hello:
.ascii "helloworld"
bh:
.byte 0x1
ADD
.word 0xff
.section .bss
<未初始化的資料>
.section .text
.globl _start
_start:
<彙編程式碼>
.equ DA, 0x89
mov r0,#DA
操作類偽指令
nop
反彙編看實質:mov r0,r0
ldr
mov 指令的立即數不能超過8位 (shift 12 位,其中4位作為左移右移的位)
ldr r0, =0x1ff
ldr 反彙編後,會發現其實是在記憶體裡面定義了一個.word 的變數
然後通過 ldr r0, [PC,#-4]
反彙編: arm-linux-objdump -O -S xxx.elf