構(gòu)成
- 標(biāo)號(hào)(可選)
- 指令助記符(必須)
- 操作數(shù)(必須)
- 注釋(可選)
標(biāo)號(hào)(label)
是一種標(biāo)識(shí)符鲫构,是指令和數(shù)據(jù)的位置標(biāo)記彤断。標(biāo)號(hào)位于指令的前端导俘,表示指令的地址榄审。包含數(shù)據(jù)標(biāo)號(hào)
和代碼標(biāo)號(hào)
考婴。
- 數(shù)據(jù)標(biāo)號(hào):和我們說的變量名類似
- 代碼標(biāo)號(hào):和我們說的代碼塊名類似
示例:
1.數(shù)據(jù)標(biāo)號(hào):
count DWORD 100
array DWORD 1024, 2048
DWORD 4096, 8192
注意:array是一個(gè)類似于高級(jí)語言中的數(shù)組贩虾,array定義了第一個(gè)數(shù)字的地址,其他數(shù)字在內(nèi)存中的地址依次排序沥阱。
2.代碼標(biāo)號(hào)
target:
mov eax, bx
...
jmp target
注:程序代碼區(qū)的標(biāo)號(hào)必須用冒號(hào):
結(jié)束.
指令助記符(instruction mnemonic)
指令就是指表明功能的命令
常用指令助記符:
MOV 傳送數(shù)據(jù)
ADD 兩個(gè)數(shù)值相加
SUB 從一個(gè)數(shù)值中減去另一個(gè)數(shù)值
MUL 兩個(gè)數(shù)值相乘
JMP 跳轉(zhuǎn)到一個(gè)新位置
CALL 調(diào)用一個(gè)子程序
操作數(shù)
是指令輸入輸出的數(shù)值缎罢。操作數(shù)的范圍是0~3。操作數(shù)類型:寄存器
考杉、內(nèi)存操作數(shù)(比如變量)
策精、整數(shù)表達(dá)式
和輸入輸出端口
。
- 目的操作數(shù):是指跟在指令后面的第一個(gè)操作數(shù)
- 源操作數(shù):是指指令后的從第二個(gè)開始的所有操作數(shù)
示例:
IMUL EAX, EBX,5 ;EBX 與 5 相乘后復(fù)制給寄存器EAX
注釋
注釋清單:
- 程序目標(biāo)說明
- 程序創(chuàng)建者名單
- 程序創(chuàng)建或修改日期
- 程序?qū)崿F(xiàn)技術(shù)說明
注釋方式:
- 單行注釋使用
;
表示 - 多行注釋使用
COMMENT + 自定義符號(hào)開始和結(jié)束
表示
示例:
COMMENT !!
第一行注釋
第二行注釋
!!