- 單片機原理及應(yīng)用:基于C51+Proteus仿真
- 劉志君 姚穎主編
- 983字
- 2021-10-27 14:26:57
第2章 匯編語言簡介
單片機所有指令的集合稱為指令系統(tǒng)。指令系統(tǒng)與計算機硬件邏輯電路有密切關(guān)系。它是表征計算機性能的一個重要指標(biāo)。不同類型的單片機指令系統(tǒng)不同,而同一系列不同型號的單片機指令系統(tǒng)基本相同。
51單片機指令系統(tǒng)具有功能強、指令短、執(zhí)行快等特點,共有111條指令,從功能上可劃分為數(shù)據(jù)傳送類(28條)、算術(shù)運算類(24條)、邏輯運算類(25條)、控制轉(zhuǎn)移類(17條)、位操作類(17條)五大類。
在匯編語言指令系統(tǒng)中,約定了一些指令格式描述中的常用符號。這些符號的標(biāo)記和含義說明見表2-1。
表2-1 指令格式描述常用符號

計算機的指令系統(tǒng)是表征計算機性能的重要指標(biāo),每種計算機都有自己的指令系統(tǒng)。MCS-51單片機的指令系統(tǒng)是一個具有255種代碼(00H~FFH)的集合,絕大多數(shù)指令包含兩個基本部分:操作碼和操作數(shù)。操作碼表明指令要執(zhí)行的操作的性質(zhì);操作數(shù)則表明參與操作的數(shù)據(jù)或數(shù)據(jù)所存放的地址。操作數(shù)可以是一個數(shù)(立即數(shù)),也可以是一個數(shù)據(jù)所在的空間地址,即在執(zhí)行指令時從指定的地址空間取出操作數(shù)。
MCS-51指令系統(tǒng)中所有程序指令是以機器語言形式表示的,可分為單字節(jié)、雙字節(jié)、三字節(jié)3種格式。
由于用二進制編碼表示的機器語言閱讀困難,且難以記憶,因此在微機控制系統(tǒng)中采用匯編語言指令來編寫程序,見表2-2。本章介紹MCS-51指令系統(tǒng)就是以匯編語言來描述的。
表2-2 匯編指令與指令代碼

MCS-51單片機指令格式采用了單地址指令格式。一條匯編語句是由標(biāo)號、操作碼、目的操作數(shù)、源操作數(shù)和注釋5部分組成,其中方括號中的部分是可以選擇的。指令的具體格式為:

標(biāo)號與操作碼之間用“:”隔開;
操作碼與操作數(shù)之間用“空格”隔開;
目的操作數(shù)和源操作數(shù)之間用“,”分隔;
操作數(shù)與注釋之間用“;”隔開。
標(biāo)號由用戶定義的符號組成,必須用英文大寫字母開始。標(biāo)號可有可無,若一條指令中有標(biāo)號,標(biāo)號代表該指令所存放的第一個字節(jié)存儲單元的地址,故標(biāo)號又稱為符號地址,在匯編時,把該地址賦值給標(biāo)號。
操作碼是指令的功能部分,不能缺省。MCS-51指令系統(tǒng)中共有42種助記符,代表了33種不同的功能。例如MOV是數(shù)據(jù)傳送的助記符。
操作數(shù)是指令要操作的數(shù)據(jù)信息。根據(jù)指令的不同功能,操作數(shù)的個數(shù)可以是3、2、1或沒有操作數(shù)。例如MOV A,#20H,包含了兩個操作數(shù)A和#20H,它們之間用“,”隔開。注釋可有可無,加入注釋主要為了便于閱讀,程序設(shè)計者對指令或程序段做簡要的功能說明,在閱讀程序或調(diào)試程序時將會帶來很多方便。
- Raspberry Pi 3 Cookbook for Python Programmers
- 電腦組裝、維護、維修全能一本通(全彩版)
- 電腦維護365問
- 嵌入式系統(tǒng)中的模擬電路設(shè)計
- The Deep Learning with Keras Workshop
- Rapid BeagleBoard Prototyping with MATLAB and Simulink
- Creating Flat Design Websites
- 基于Proteus仿真的51單片機應(yīng)用
- 單片機原理與技能訓(xùn)練
- Arduino項目開發(fā):智能生活
- IP網(wǎng)絡(luò)視頻傳輸:技術(shù)、標(biāo)準(zhǔn)和應(yīng)用
- 觸摸屏應(yīng)用技術(shù)從入門到精通
- 單片機原理及應(yīng)用
- Blender 3D By Example
- 微服務(wù)實戰(zhàn)