單片機指令系統(tǒng)
指令是根據(jù)計算機硬件特點研制出來的,指令系統(tǒng)與計算機硬件有著相對應(yīng)的關(guān)系,用指令對計算機進(jìn)行控制能夠充分利用計算機的硬件資源。計算機所能執(zhí)行的全部指令集合就稱為計算機的指令系統(tǒng)。
機器語言指令用二進(jìn)制碼表示,是CPU唯一能直接識別和執(zhí)行的指令,但是不便于人們理解。為便于人們使用而采用匯編語言來編寫程序。匯編語言的指令主要由助記符、符號和數(shù)字等來表示,它通過匯編程序?qū)⑵浞g成機器指令代碼(目標(biāo)代碼)來控制CPU完成相應(yīng)的功能。
一、單片機指令系統(tǒng)匯編語言指令語句格式如下:
標(biāo)號:操作碼 【操作數(shù)1】,【操作數(shù)2】 ; 注釋
標(biāo)號:標(biāo)號為用戶定義的符號,實際意義代表當(dāng)前語句在程序存儲器中的存放地址。標(biāo)號可以缺省,以字母開始,后跟1-8個英文字母或數(shù)字,并以冒號結(jié)尾。
操作碼:也稱指令助記符,是指令名稱的代表符號,匯編語言中由英文單詞縮寫而成,反映指令的功能。它是指令語句中的關(guān)鍵字,不可缺省,表示指令的操作類型,必要時可以在前面加上一個或多過“前綴”,從而實現(xiàn)某些附加操作。
操作數(shù):參加本指令運算的數(shù)據(jù)或數(shù)據(jù)存放的地址。一條指令可以沒有操作數(shù),也可以有多個操作數(shù)。
注釋:注釋可以缺省,注釋必須用分號(;)開頭。
二、單片機指令格式本章后面章節(jié)部分用到了一些一些特殊符號,它們的意義如表1所示。
表1 特殊符號意義表
操作數(shù)字段可以只有一個、兩個或多個,分別對應(yīng)于單字節(jié)、雙字節(jié)或三字節(jié)指令。
1.單字節(jié)指令
單字節(jié)指令只有一個字節(jié),由8位二進(jìn)制編碼表示。操作碼和操作數(shù)在一個字節(jié)中。
例如:MOV A, Ri ; Ri)→(A)把寄存器Ri中的內(nèi)容送到累加器A中去。
2.雙字節(jié)指令
雙字節(jié)的編碼由兩個字節(jié)組成,其中一個字節(jié)為操作碼,另一個字節(jié)為操作數(shù)。該指令存放在存儲器時需占用兩個存儲器單元。
例如:MOV A, #data ; data → (A)把立即數(shù)data送到累加器A中。
在MCS-51匯編語言指令中,立即數(shù)前面必須有符號“#”。
3.三字節(jié)指令
三字節(jié)指令格式中第一個字節(jié)為操作碼,其后兩個字節(jié)為操作數(shù)。操作數(shù)可以是數(shù)據(jù),
也可以是地址。
例如:MOV direct, #data ; data → (direct) 把立即數(shù)data送到內(nèi)存單元或者特殊功能寄存器中
編輯:admin 最后修改時間:2018-05-08