1. MOV ????傳送(分配)數(shù)值
2. ADD???? 兩個數(shù)相加
3. SUB ????從一個數(shù)值中減去另一個數(shù)值
4. PUSH? ?將Stack所指向的地址寫入寄存器
5. RET? ? ? 用于終止當(dāng)前函數(shù)的執(zhí)行并返回
6. MUL? ? ?兩個數(shù)相乘
7. JMP? ?跳轉(zhuǎn)到一個新位置
8. CALL 調(diào)用一個子程序
9. POP? ? 用于取出Stack最近寫入的值
#一段代碼的注釋
.data? ? ? ? ? ? :此為數(shù)據(jù)區(qū)
sum DWORD 0? ? ? :定義一個sum變量
.code? ? ? ? ? ? ? ? ? ? ? ? ? :此為代碼區(qū)
mov eax, 3? ? ? ? ? ? ? ? ? ? ?:將數(shù)字3送入eax寄存器(eax表示32位的寄存器)
add eax, 3? ? ? ? ? ? ? ? ? ? ? ? :eax寄存器加3
INVOKE ExitProcess, 0? ? ?:結(jié)束程序
寄存器:
rip????指令指針寄存器
rsp ??棧頂寄存器
rbp???椢肮牵基址寄存器