版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 單片機(jī)原理及應(yīng)用 張?zhí)m紅9第 1 章 微型計(jì)算機(jī)的基本概念11 微型計(jì)算機(jī)由哪幾部分組成每一部分各起何作用解 微型計(jì)算機(jī)由微處理器芯片存儲(chǔ)器芯片輸入輸出接口電路芯片與總線組成微處理器是微型計(jì)算機(jī)的核心它通常包括 3 個(gè)基本部分 算術(shù)邏輯部件 ALU ArithmeticLogic Unit 對(duì)傳送到微處理器的數(shù)據(jù)進(jìn)行算術(shù)運(yùn)算或邏輯運(yùn)算的電路如執(zhí)行加法減法運(yùn)算邏輯與邏輯或運(yùn)算等 工作寄存器組用來(lái)存放操作數(shù)及運(yùn)算的中間結(jié)果等 控制部件包括時(shí)鐘電路和控制電路時(shí)鐘電路產(chǎn)生時(shí)鐘脈沖用于計(jì)算機(jī)各部分電路的同步定時(shí)控制電路產(chǎn)生完成各種操作所需的控制信號(hào)存儲(chǔ)器是微型計(jì)算機(jī)的重要組成部分計(jì)算機(jī)有了存儲(chǔ)器才具備
2、記憶功能IO 接口是溝通 CPU 與外部設(shè)備的不可缺少的重要部件外部設(shè)備種類繁多其運(yùn)行速度數(shù)據(jù)形式電平等各不相同常常與 CPU 不一致所以要用 IO 接口作橋梁起到信息轉(zhuǎn)換與協(xié)調(diào)的作用總線是在微型計(jì)算機(jī)各芯片之間或芯片內(nèi)部各部件之間傳輸信息的一組公共通信線12 什么是 CPU什么是主機(jī)解由于運(yùn)算器控制器是計(jì)算機(jī)處理信息的關(guān)鍵部件所以常將它們合稱為中央處理單元 CPUCentral Processing Unit簡(jiǎn)稱 CPU通常把運(yùn)算器控制器存儲(chǔ)器這三部分稱為計(jì)算機(jī)的主機(jī)13 何謂計(jì)算機(jī)系統(tǒng)何謂單板機(jī)何謂單片機(jī)解計(jì)算機(jī)與外圍設(shè)備電源系統(tǒng)軟件一起構(gòu)成應(yīng)用系統(tǒng)稱為計(jì)算機(jī)系統(tǒng)在一塊印刷電路板上集成了中
3、央處理單元 CPU只讀存儲(chǔ)器 ROM隨機(jī)存取存儲(chǔ)器 RAMIO 接口定時(shí)器計(jì)數(shù)器中斷系統(tǒng)等功能部件構(gòu)成一臺(tái)完整的微型計(jì)算機(jī)稱為單板機(jī)在一塊半導(dǎo)體芯片上集成了中央處理單元 CPU只讀存儲(chǔ)器 ROM隨機(jī)存取存儲(chǔ)器 RAMIO 接口定時(shí)器計(jì)數(shù)器中斷系統(tǒng)等功能部件構(gòu)成一臺(tái)完整的微型計(jì)算機(jī)稱為單片機(jī)14 為什么要采用總線結(jié)構(gòu)芯片為什么要通過(guò)緩沖器才能掛在總線上解微型計(jì)算機(jī)采用總線結(jié)構(gòu)后芯片之間不需單獨(dú)走線大大減少了連接線的數(shù)量掛在總線上的芯片不能同時(shí)發(fā)送信息否 則多個(gè)信息同時(shí)出現(xiàn)在總線上將發(fā)生沖突而造成出錯(cuò)如果有幾塊芯片需要輸出信息就必須分時(shí)傳送為了實(shí)現(xiàn)這個(gè)要求掛在總線上的各芯片必須通過(guò)緩沖器與總線相連
4、15 何謂程序計(jì)數(shù)器程序計(jì)數(shù)器中存放的是什么內(nèi)容它對(duì)計(jì)算機(jī)的工作起什么作用在什么情況下程序的執(zhí)行順序發(fā)生轉(zhuǎn)移此時(shí)程序計(jì)數(shù)器的內(nèi)容是怎么樣的解程序計(jì)數(shù)器 PC 是管理程序執(zhí)行次序的特殊功能寄存器程序計(jì)數(shù)器 PC 中存放的是下一條要執(zhí)行的指令的地址它管理程序執(zhí)行的次序在執(zhí)行轉(zhuǎn)移指令的情況下程序的執(zhí)行順序發(fā)生轉(zhuǎn)移此時(shí)程序計(jì)數(shù)器直接接受內(nèi)部總線送來(lái)的數(shù)據(jù)并用該數(shù)據(jù)取代原有的內(nèi)容16 評(píng)價(jià)存儲(chǔ)器有哪些重要的指標(biāo)為什么說(shuō)存儲(chǔ)器性能已成為計(jì)算機(jī)性能提高的關(guān)鍵10解存儲(chǔ)器的重要指標(biāo)是容量和存取速度容量越大則記憶的信息越多計(jì)算機(jī)的功能就越強(qiáng)存儲(chǔ)器的存取速度比 CPU 的運(yùn)算速度要低所以存儲(chǔ)器的工作速度是影響計(jì)算
5、機(jī)工作速度的主要因素17 綜述存儲(chǔ)器的種類特點(diǎn)用途和優(yōu)缺點(diǎn)主要針對(duì)內(nèi)存解按結(jié)構(gòu)與使用功能分內(nèi)存儲(chǔ)器可分為隨機(jī)存取存儲(chǔ)器 RAM 和只讀存儲(chǔ)器 ROM 兩類隨機(jī)存取存儲(chǔ)器 RAM 又稱讀寫存儲(chǔ)器它的數(shù)據(jù)讀取存入時(shí)間都很短因此計(jì)算機(jī)運(yùn)行時(shí)既可以從 RAM 中讀數(shù)據(jù)又可以將數(shù)據(jù)寫入 RAM但掉電后 RAM 中存放的信息將丟失RAM 適宜存放原始數(shù)據(jù)中間結(jié)果及最后的運(yùn)算結(jié)果因此又被稱作數(shù)據(jù)存儲(chǔ)器只讀存儲(chǔ)器 ROM 讀出一個(gè)數(shù)據(jù)的時(shí)間為數(shù)百納秒有時(shí)也可改寫但寫入一個(gè)數(shù)據(jù)的時(shí)間長(zhǎng)達(dá)數(shù)十 ms因此在計(jì)算機(jī)運(yùn)行時(shí)只能執(zhí)行讀操作掉電后 ROM 中存放的數(shù)據(jù)不會(huì)丟失ROM 適宜存放程序常數(shù)表格等因此又稱為程序存儲(chǔ)
6、器只讀存儲(chǔ)器又可以分為下列四類 掩膜 ROM在半導(dǎo)體工廠生產(chǎn)時(shí)已經(jīng)用掩膜技術(shù)將程序做入芯片用戶只能讀出其內(nèi)容而不能改寫掩膜 ROM 只能應(yīng)用于有固定程序且批量很大的產(chǎn)品中 可編程只讀存儲(chǔ)器 PROM用戶可將程序?qū)懭?PROM僅程序一經(jīng)寫入就不能改寫 可擦除可編程只讀存儲(chǔ)器 EPROM用戶可將程序?qū)懭?EPROM 芯片如果要改寫程序先用紫外燈照射芯片擦去原先的程序然后寫入新程序與 PROM 芯片一樣寫入的速度很慢且要用到高壓所以必須用特定的 EPROM 編程器寫入信息在計(jì)算機(jī)運(yùn)行時(shí)只能執(zhí)行讀操作 電擦除可編程只讀存儲(chǔ)器 EEPROM這是近年發(fā)展起來(lái)的一種只讀存儲(chǔ)器由于采用電擦除方式而且擦除寫入讀
7、出的電源都用十 5V故能在應(yīng)用系統(tǒng)中在線改寫但目前寫入時(shí)間較長(zhǎng)約需 10ms 左右讀出時(shí)間約為幾百 ns18 何謂堆棧為什么要設(shè)置堆棧棧區(qū)是怎樣確定的數(shù)據(jù)進(jìn)棧出棧按照何種規(guī)律進(jìn)棧用什么指令出棧用什么指令進(jìn)棧出棧時(shí)棧指針如何變化通常棧底所指是什么內(nèi)容解微型計(jì)算機(jī)中的堆棧是讀寫存儲(chǔ)器 RAM 中的一個(gè)特殊的區(qū)域是一組按照先進(jìn)后出的方式工作的用于暫存信息的存儲(chǔ)單元設(shè)置堆棧的目的是便于保護(hù)斷點(diǎn)地址與現(xiàn)場(chǎng)信息用堆棧指針指示堆棧所在的位置數(shù)據(jù)進(jìn)棧出棧按先進(jìn)后出的原則工作進(jìn)棧用 PUSH 指令出棧用 POP 指令進(jìn)棧時(shí)指針向地址增加的方向變化出棧時(shí)指針向地址減小的方向變化棧底是最先進(jìn)棧的信息所在的單元19
8、請(qǐng)解釋下列名詞1 字長(zhǎng)字字節(jié)BCD 碼ASCII 碼2 指令指令地址指令系統(tǒng)程序解1一臺(tái)計(jì)算機(jī)一次所能處理的二進(jìn)制代碼的位數(shù)稱為該計(jì)算機(jī)的字長(zhǎng)16 位二進(jìn)制數(shù)稱為一個(gè)字8 位二進(jìn)制數(shù)稱為一個(gè)字節(jié)二進(jìn)制編碼的十進(jìn)制數(shù)簡(jiǎn)稱二十進(jìn)制數(shù)又稱 BCD 碼 Binary Coded Decimal 11ASCII 碼是美國(guó)標(biāo)準(zhǔn)信息交換代碼 American Standard Code for Information Interchange 的縮寫2指令控制計(jì)算機(jī)進(jìn)行各種操作的命令稱為指令指令地址指令所在存儲(chǔ)單元的地址指令系統(tǒng)一臺(tái)計(jì)算機(jī)所具有的所有指令的結(jié)合稱為該計(jì)算機(jī)的指令系統(tǒng)程序一系列指令的有序集合稱為
9、程序110 計(jì)算機(jī)中常用的計(jì)數(shù)制有哪些解二進(jìn)制十進(jìn)制 BCD 十六進(jìn)制111 什么是機(jī)器碼 什么是真值解把符號(hào)數(shù)值化的數(shù)稱為機(jī)器數(shù)或機(jī)器碼原來(lái)的數(shù)值叫做機(jī)器數(shù)的真值112 完成下列數(shù)制的轉(zhuǎn)換 1 10100110B D H 2 011B D 3 25325 B H 4 10ll011101B H BCD解 1 166A6 2 075 3 1111110101FD4 4 5BA1001000101XXXXXXXXXX113 8 位和 16 位二進(jìn)制數(shù)的原碼補(bǔ)碼和反碼可表示的數(shù)的范圍分別是多少解8 位二進(jìn)制數(shù)原碼 127127 16 位二進(jìn)制數(shù)原碼 3276732767 8 位二進(jìn)制數(shù)補(bǔ)碼 128
10、127 16 位二進(jìn)制數(shù)補(bǔ)碼 3276832767 8 位二進(jìn)制數(shù)反碼 127127 16 位二進(jìn)制數(shù)反碼 3276732767 114 寫出下列真值對(duì)應(yīng)的原碼和補(bǔ)碼的形式 1 X111001lB 2 X71D 3 X1001001B解 1 原碼11110011B 補(bǔ)碼10001101B 2 原碼11000111B 補(bǔ)碼10111001B 3 原碼01001001B 補(bǔ)碼01001001B115 寫出符號(hào)數(shù) 10110101B 的反碼和補(bǔ)碼解11001010B11001011B116 已知 X 和 Y 的真值求X 十 Y的補(bǔ)碼 1 X1110111BYl011010B 2 X56D Y21D1
11、2解 1 11100011B 2 00100011B117 己知 X1101001BY1010110B用補(bǔ)碼求 XY的值解11101101B118 請(qǐng)寫出下列字符的 ASCII 碼4A3解34H41H33H3DH21H119 若給字符 4 和 9 的 ASCII 碼加奇校驗(yàn)應(yīng)是多少解34HB9H120 上題中若加偶校驗(yàn)結(jié)果如何解B4H39H121 計(jì)算下列表達(dá)式 1 4EH 十 10110101B × 00101 BCD D 2 4EH 2408H 十B2 B解 1 1295D 2 101010B13第 2 章 MCS51單片機(jī)的硬件結(jié)構(gòu)21 請(qǐng)結(jié)合課本中 MCS51系列單片機(jī)的結(jié)構(gòu)
12、圖闡明其大致組成解按功能部件分51 子系列單片機(jī)由 CPU數(shù)據(jù)存儲(chǔ)器 RAM程序存儲(chǔ)器 ROM特殊功能寄存器4 個(gè)并行 IO 口1 個(gè)串行口定時(shí)器計(jì)數(shù)器中斷系統(tǒng)等八個(gè)功能部件組成CPU 由累加器 A暫存器 12ALUPSW 等組成數(shù)據(jù)存儲(chǔ)器由 RAM 地址寄存器RAM 單元等組成程序存儲(chǔ)器指 EPROM 或 ROMSFR 指 P0P1P2P3 鎖存器BDPTR 等22 綜述 MCS51系列單片機(jī)各引腳的作用并進(jìn)行分類解 1 主電源引腳Vcc接5V 電源正端Vss接5V 電源地端 2 外接晶體引腳XTAL1片內(nèi)反相放大器輸入端XTAL2 片內(nèi)反相放大器輸出端 3 輸入輸出引腳comP0 口的 8
13、 個(gè)引腳在不接片外存儲(chǔ)器與不擴(kuò)展 IO 接口時(shí)作為準(zhǔn)雙向輸入輸出接口在輸入時(shí)需要附加條件的雙向輸入輸出口稱為準(zhǔn)雙向 IO 口在接有片外存儲(chǔ)器或擴(kuò)展IO 接口時(shí)P0 口分時(shí)復(fù)用為低 8 位地址總線和雙向數(shù)據(jù)總線comP1 口的8 個(gè)引腳可作為準(zhǔn)雙向 IO 接口使用對(duì)于 52 子系列P10 與 P11 還有第二種功能P10 可用作定時(shí)器計(jì)數(shù)器2 的計(jì)數(shù)脈沖輸入端 T2P11 可用作定時(shí)器計(jì)數(shù)器 2 的外部控制端 T2EXcomP2 口的 8 個(gè)引腳一般可作為準(zhǔn)雙向 IO 接口在接有片外存儲(chǔ)器或擴(kuò)展 IO 接口且尋址范圍超過(guò) 256 個(gè)字節(jié)時(shí)P2 口用為高 8 位地址總線comP3 口的 8 個(gè)引腳
14、 一般可作為準(zhǔn)雙向 IO 接口 P3 口的第二功能如表 21所示表 21引腳 第二功能P30P31P32P33P34P35P36P37RXD 串行輸入口RXD 串行輸出口INT0 外部中斷 0 請(qǐng)求輸入端INT1 外部中斷 1 請(qǐng)求輸入端T0 定時(shí)器計(jì)數(shù)器 0 計(jì)數(shù)脈沖輸入端T1 定時(shí)器計(jì)數(shù)器 1 計(jì)數(shù)脈沖輸入端WR 片外數(shù)據(jù)存儲(chǔ)器寫選通信號(hào)輸出端RD 片外數(shù)據(jù)存儲(chǔ)器讀選通信號(hào)輸出端1423 EA 引腳的作用是什么在下列四種情況下 EA 引腳各應(yīng)該接何種電平 1 只有片內(nèi) ROM 2 只有片外 ROM 3 有片內(nèi) ROM 和片外 ROM 4 有片內(nèi) ROM 和片外 ROM片外 ROM 所存為調(diào)
15、試程序解 EA VDD片外程序存儲(chǔ)器選用端 1 EA 1 2 EA 0 3 若片外 ROM 和片內(nèi) ROM 編址不重疊則EA 1 4 若片外 ROM和片內(nèi) ROM 編址重疊則 訪問(wèn)片內(nèi)ROM 時(shí)EA 1訪 問(wèn)片外 ROM 時(shí)EA 024 MCS51系列單片機(jī)的引腳中有多少根IO 線它們與單片機(jī)對(duì)外的地址總線和數(shù)據(jù)總線之間有什么關(guān)系其地址總線和數(shù)據(jù)總線各有多少位對(duì)外可尋址的地址空間有多大解MCS51系列單片機(jī)有 4 個(gè) IO 端口每個(gè)端口都是 8 位雙向口共占 32 根引腳在無(wú)片外擴(kuò)展的存儲(chǔ)器的系統(tǒng)中這 4 個(gè)端口的每一位都可以作為雙向通用 IO 端口使用在具有片外擴(kuò)展存儲(chǔ)器的系統(tǒng)中P2 口作為
16、高 8 位地址線P0 口分時(shí)作為低 8 位地址線和雙向數(shù)據(jù)總線P3 口作為控制線使用地址和數(shù)據(jù)線分別是 16 位和 8 位對(duì)外可尋址的地址空間是 64KB25 程序計(jì)數(shù)器的符號(hào)是什么MCS51系列單片機(jī)的程序計(jì)數(shù)器有幾位它的位置在哪里解 程序計(jì)數(shù)器的符號(hào)是 PCMCS51系列單片機(jī)的程序計(jì)數(shù)器有 16 位為一個(gè)專用寄存器在CPU 內(nèi)部26 何謂程序狀態(tài)字它的符號(hào)是什么它的位置在哪里它各位的含義是什么為 1為 0各代表什么各在何種場(chǎng)合有用解程序狀態(tài)字是一個(gè) 8 位寄存器它包含了程序運(yùn)行的狀態(tài)信息它的符號(hào)是 PSW它的位置在CPU 中各位含義如下D7 D6 D5 D4 D3 D2 D1 D0C A
17、C F0 RS1 RS0 O2 P 1 進(jìn)位標(biāo)志位 C PSW7 作用在執(zhí)行某些算術(shù)操作類邏輯操作類指令時(shí)可被硬件或軟件置位或清零例如 8 位加法運(yùn)算時(shí)如果運(yùn)算結(jié)果的最高位D7 有進(jìn)位則 C 1否則 C0又如 8 位減法運(yùn)算時(shí)如果運(yùn)算結(jié)果的最高位D7 有借位則 C1否則 C0 2 輔助進(jìn)位標(biāo)志 Ac PSW6 作用8 位加法運(yùn)算時(shí)如果低半字節(jié)的最高位 D3 有進(jìn)位則 Ac1否則 Ac08 位減法運(yùn)算時(shí)如果 D3 有借位則 Ac1否則 Ac0Ac 在作 BCD 碼運(yùn)算而進(jìn)行二十進(jìn)制調(diào)整時(shí)有用 3 軟件標(biāo)志 F0 PSW5 作用是用戶定義的一個(gè)狀態(tài)標(biāo)志可通過(guò)軟件對(duì)它置位或清零編程時(shí)也常測(cè)試其是否建
18、起而進(jìn)行程序分支15 4 工作寄存器組選擇位 RS1RS0 PSW4PSW3 作用用軟件置位或清零以確定四組工作寄存器中的哪一組工作它們與各組的對(duì)應(yīng)關(guān)系為RS1 RS00 0 0 組地址從 0007H0 1 1 組地址從 080FH1 0 2 組地址從 1017H1 1 3 組地址從 181FH 5 溢出標(biāo)志 OV PSW2 作用當(dāng)執(zhí)行算術(shù)運(yùn)算時(shí)由硬件置位或清零以指示溢出狀態(tài)各種算術(shù)指令對(duì)該位的影響情況在指令系統(tǒng)中詳細(xì)介紹 6 奇偶標(biāo)志 P PSW0 每執(zhí)行一條指令單片機(jī)都能根據(jù) A 中 1 的個(gè)數(shù)的奇偶自動(dòng)令 P 置位或清零奇為 1偶為0此標(biāo)志對(duì)串行通信的數(shù)據(jù)傳輸非常有用通過(guò)奇偶校驗(yàn)可檢驗(yàn)傳
19、輸?shù)目煽啃?7 MCS51系列單片機(jī)的內(nèi)存由哪幾部分組成其編址與訪問(wèn)的規(guī)律是怎樣的解MCS51系列單片機(jī)內(nèi)存由程序存儲(chǔ)器與數(shù)據(jù)存儲(chǔ)器兩個(gè)獨(dú)立的空間程序存儲(chǔ)器的編址自 0000H 開(kāi)始最大可至 FFFFHMCS51單片機(jī)有 3 種不同的芯片片內(nèi)有掩膜只讀存儲(chǔ)器的 如 80518 052 片 內(nèi)有 EPROM的 如 8751 和片內(nèi)沒(méi)有只讀存儲(chǔ)器的 如 80318032 而 ROM 的尋址范圍為 64KB所以片內(nèi)程序存儲(chǔ)器的容量遠(yuǎn)小于該數(shù)可見(jiàn)如擴(kuò)展片外存儲(chǔ)器其裕量是很大的ROM 編址規(guī)律程序存儲(chǔ)器的編址規(guī)律為先片內(nèi)后片外片內(nèi)片外連續(xù)二者一般不作重疊根據(jù) PC 的內(nèi)容進(jìn)行訪問(wèn)片內(nèi) RAM 從 00H
20、 開(kāi)始編址片外 RAM 從 0000H 開(kāi)始部分地址重疊實(shí)際并不完全一樣若只需擴(kuò)展少量片外 RAM容量不超過(guò) 256 個(gè)單元?jiǎng)t也可以按照 8 位二進(jìn)制編址從 00H 開(kāi)始到 FFH 結(jié)束由于訪問(wèn)片內(nèi)外 RAM 所用的指令不一樣不會(huì)引起混淆28 MCS51系列單片機(jī)片內(nèi)RAM 有多少單元有哪些用途這些用途各占用哪些單元堆棧的棧區(qū)設(shè)在哪里解51 子系列片內(nèi) RAM 有 128B 單元52 子系列片內(nèi) RAM 有 256B 單元單片機(jī)片內(nèi) RAM 可分為工作寄存器區(qū)位尋址區(qū)數(shù)據(jù)緩沖區(qū)三個(gè)區(qū)域 1 工作寄存器區(qū)00H1FH單元為工作寄存器區(qū)供用戶編程時(shí)使用臨時(shí)寄存8 位信息分為四組 0 7 R R 但
21、同時(shí)只能有一組參與程序程序的運(yùn)行用 RS1RS0 兩位的狀態(tài)來(lái)選擇參與運(yùn)行的工作寄存器組 2 位尋地址20H2FH對(duì)該區(qū)的每一位都有一個(gè)位地址共有 128 個(gè)位地址 3 數(shù)據(jù)緩沖區(qū)30H7FH52 子系列為 30HFFH作為普通的 RAM 單元使用 4 堆棧棧區(qū)一般設(shè)在 2FH 以上的單元29 MCS51系列單片機(jī)在片內(nèi)集成了哪些主要邏輯功能部件各個(gè)邏輯部件的主要功能是什么解MCS51單片機(jī)在片內(nèi)集成了中央處理器CPU程序存儲(chǔ)器ROM數(shù)據(jù)存儲(chǔ)器RAM定時(shí)器計(jì)數(shù)器并行 IO 接口串行 IO 接口和中斷系統(tǒng)等幾大單元CPU是整個(gè)單片機(jī)的核心部件由 運(yùn)算器和控制器組成運(yùn) 算器可以完成算術(shù)運(yùn)算和邏輯運(yùn)
22、算16其操作順序在控制器控制下進(jìn)行控制器是由程序計(jì)數(shù)器 PCProgram Counter指令寄存器 IRInstruction Register指令譯碼器 IDInstruction Decoder定時(shí)控制邏輯和振蕩器OSC 等電路組成CPU 根據(jù) PC 中的地址將欲執(zhí)行指令的指令碼從存儲(chǔ)器中取出存放在 IR 中ID 對(duì) IR 中的指令碼進(jìn)行譯碼定時(shí)控制邏輯在 OSC 配合下對(duì) ID 譯碼后的信號(hào)進(jìn)行分時(shí)以產(chǎn)生執(zhí)行本條指令所需的全部信號(hào)程序存儲(chǔ)器ROM用于存儲(chǔ)程序常數(shù)表格等數(shù)據(jù)存儲(chǔ)器RAM用于存儲(chǔ)數(shù)據(jù)8051 內(nèi)部有兩個(gè) 16 位可編程序的定時(shí)器計(jì)數(shù)器 T0 和 T1均為加 1 計(jì)數(shù)器可用于
23、定時(shí)和對(duì)外部輸入脈沖的計(jì)數(shù)8051 的中斷系統(tǒng)主要由中斷允許控制器 IE 和中斷優(yōu)先級(jí)控制器 IP 等電路組成可實(shí)現(xiàn)對(duì) 5 個(gè)中斷源的管理8051 的中斷系統(tǒng)主要由中斷允許控制器 IE 和中斷優(yōu)先級(jí)控制器 IP 等電路組成其中IE 用于控制5 個(gè)中斷源中哪些中斷請(qǐng)求被允許向CPU 提出哪些中斷源的中斷請(qǐng)求被禁止IP用于控制 5 個(gè)中斷源的中斷請(qǐng)求的優(yōu)先權(quán)級(jí)別IO 接口是 MCS51單片機(jī)對(duì)外部實(shí)現(xiàn)控制和信息交換的必經(jīng)之路用 于信息傳送過(guò)程中的速度匹配和增加它的負(fù)載能力可分為串行和并行 IO 接口210 8051 單片機(jī)的控制總線信號(hào)有哪些各有何作用解獨(dú)立的控制線一共有 4 條1ALE PROG
24、 地址鎖存允許編程線配合 P0 口引腳的第二功能使用在訪問(wèn)片外存儲(chǔ)器時(shí)8051在P07P00 引腳上輸出片外存儲(chǔ)器低位地址的同時(shí)在ALE PROG 上輸出一個(gè)高電位脈沖用于把這個(gè)片外存儲(chǔ)器低位地址鎖存到外部專用地址鎖存器以便空出 P07P00 引腳線去傳送隨后而來(lái)的片外存儲(chǔ)器讀寫數(shù)據(jù)在不訪問(wèn)片外存儲(chǔ)器時(shí)8051 自動(dòng)在 ALE PROG 上輸出頻率為 fosc6 的脈沖序列該脈沖序列可用作外部時(shí)鐘源或作為定時(shí)脈沖源使用2 EA Vpp允許訪問(wèn)片外存儲(chǔ)器編程電源線可以控制 8051 使用片內(nèi) ROM 還是使用片外ROM若EA 則允許使用片內(nèi) ROM若EA 則允許使用片外 ROM3PSEN 片外
25、ROM 選通線在執(zhí)行訪問(wèn)片外 ROM 的指令 MOVC 時(shí)8051 自動(dòng)在PSEN 上產(chǎn)生一個(gè)負(fù)脈沖用于為片外 ROM 芯片的選通其他情況下PSEN 線均為高電平封鎖狀態(tài)4RSTVPD復(fù)位備用電源線可以使 8051 處于復(fù)位工作狀態(tài)211 何謂特殊功能寄存器8031 有哪些特殊功能寄存器試按其用途相關(guān)聯(lián)的硬件功能單元如CPU并行 IO 口串行 IO 口定時(shí)器計(jì)數(shù)器中斷控制等進(jìn)行分類解特殊功能寄存器也稱專用寄存器專用于控制管理片內(nèi)算術(shù)邏輯部件并行 IO 口串行 IO口定時(shí)器計(jì)數(shù)器中斷系統(tǒng)等功能模塊的工作用戶在編程時(shí)可以置數(shù)設(shè)定但不能移作它用除 PC 外8031 有 18 個(gè)專用寄存器其中 3 個(gè)
26、為雙字節(jié)寄存器共占用 21 個(gè)字節(jié)按其用途相關(guān)聯(lián)的硬件功能單元可分P0 口堆棧指針數(shù)據(jù)指針低字節(jié)數(shù)據(jù)指針高字節(jié)定時(shí)器計(jì)數(shù)器計(jì)數(shù)器 0 高低字節(jié)定時(shí)器計(jì)數(shù)器 1 高低字節(jié)P1 口電源控制串行控制串行數(shù)據(jù)緩沖器P2 口中斷允許控制P3 口中斷允許優(yōu)先級(jí)控制程序狀態(tài)字累加器B 寄存器共 18 個(gè)專用寄存器212 何謂時(shí)鐘周期指令周期機(jī)器周期針對(duì) MCS51系列單片機(jī)如采用 12MHZ 晶振它們的頻率和周期各是什么解 振蕩器輸出的振蕩脈沖經(jīng)二分頻成為內(nèi)部時(shí)鐘信號(hào)用作單片機(jī)內(nèi)部各功能部件按序協(xié)調(diào)工作的控制信號(hào)其周期稱時(shí)鐘周期機(jī)器周期6 個(gè)時(shí)鐘周期構(gòu)成一個(gè)機(jī)器周期17指令周期CPU 執(zhí)行一條指令的時(shí)間針對(duì)
27、 MCS51系列單片機(jī)采用 12MHZ 晶振則振蕩周期為 0167us時(shí)鐘周期為 0333us頻率為 6MHZ機(jī)器周期為 1us頻率為 1MHZ指令周期為 1us 到 4us頻率為 1MHZ 到 025MHz213 綜述 P0P1P2P3 口各有哪幾種功能解這 4 個(gè)接口可以并行輸入或輸出 8 位數(shù)據(jù)也可按位使用即每一根輸入輸出線都能獨(dú)立地用作輸入或輸出四個(gè) 8 位并行口的功能各不相同P0 口是三態(tài)雙向口通常稱為數(shù)據(jù)總線口因?yàn)橹挥性摽谀苤苯佑糜趯?duì)外部數(shù)據(jù)總線的讀寫操作P0 口還用于輸出外部數(shù)據(jù)存儲(chǔ)器的低 8 位地址由于是分時(shí)輸出故應(yīng)在外部加地址鎖存器將地址數(shù)據(jù)鎖存地址鎖存信號(hào)用 ALEP1 口
28、是專門供用戶使用的 IO 接口是準(zhǔn)雙向接口P2 口是供系統(tǒng)擴(kuò)展時(shí)作高 8 位地址線用如果沒(méi)有系統(tǒng)擴(kuò)展例如使用 80518751 單片機(jī)不擴(kuò)展外部存儲(chǔ)器時(shí)P2 口也可以作為用戶 IO 線使用P2 口也是準(zhǔn)雙向口P3 口是雙功能口該口的每一位均可以獨(dú)立地定義為第一 IO 功能或第二 IO 口功能P3 口的第二功能如表 21所示214 在讀回端口數(shù)據(jù)時(shí)為什么應(yīng)讀鎖存器內(nèi)容而不宜讀引腳電平解假如通過(guò)三態(tài)門從引腳上讀回?cái)?shù)據(jù)有時(shí)會(huì)發(fā)生錯(cuò)誤例如用一根口線去驅(qū)動(dòng)一個(gè)晶體管的基極在向此口線輸出 l 時(shí)鎖存器 Q1但晶體管導(dǎo)通后引腳上的電平已拉到低電平 07V 從引腳讀回?cái)?shù)據(jù)會(huì)錯(cuò)讀為 0215 闡明準(zhǔn)雙向口這一名
29、稱所以要加用準(zhǔn)字的理由解在執(zhí)行輸入操作時(shí)如果鎖存器原來(lái)寄存的數(shù)據(jù) Q0那么由于Q 1 將使 V1 導(dǎo)通引腳被始終箝拉在低電平上不可能輸入高電平為此用作輸入前必須先用輸出指令置 Q1使 V1截止正因?yàn)槿绱?P1 口稱為準(zhǔn)雙向接口216 8031單片機(jī)與開(kāi)關(guān)及LED發(fā)光二極管接口電路如216題圖所示用 8031單片機(jī)P1 com作為數(shù)據(jù)輸入口聯(lián)接開(kāi)關(guān) K3K0com作為輸出口聯(lián)接發(fā)光二極管 LED3LED0編程使開(kāi)關(guān)K3K0的狀態(tài)由 com輸入再由 com輸出通過(guò)發(fā)光二極管顯示出來(lái)要求開(kāi)關(guān)合上時(shí)二極管亮開(kāi)關(guān)斷開(kāi)時(shí)二極管不亮5VEAP15P168031P17LED1LED2LED3P145VP10P
30、11P12LED0P13K1K2K3K0216 題圖解 ORG 2200HMOV AFFH P1 口為輸入先送 118MOV P1A P1 口低 4 位輸出 1LOOPMOV AP 1 口狀態(tài)輸入SWAP A 開(kāi)關(guān)狀態(tài)到高 4 位ORL A0FH低 4 位為 1為下一次輸入做準(zhǔn)備MOV P1A 開(kāi)關(guān)狀態(tài)輸出AJMP LOOP 循環(huán)217 電路如 217 題圖所示用 8031P1 口的 P10P11 作為變量 XW 的輸入端用 P12 作為電路輸出端并用 LED 來(lái)顯示輸出P13 端傳送狀態(tài)消息當(dāng)檢測(cè)到 P13 為低電平時(shí)CPU 開(kāi)始運(yùn)算 D X ù W ù X ú
31、 W 并把結(jié)果送 P12 輸出顯示然后重新開(kāi)始檢測(cè) P13 狀態(tài)信息試編寫完成上述要求的程序EA 5VXWP10P118031P13YP12217 題圖解參考程序如下ORG 0000HLJMP MAINORG 0100HMAIN MOV P108HLOOP MOV CP13JC LOOPMOV P103HMOV CP10ANL CP11CPL CMOV 00HCMOV CP10ORL CP11ANL C00HMOV P12CSJMP MAINEND218 第 218 題圖示電路中X1X2X3 是三個(gè)故障源當(dāng)系統(tǒng)無(wú)故障時(shí)X1X2X3 均為低電19平對(duì)應(yīng)的三個(gè)顯示燈全滅當(dāng)某部分出現(xiàn)故障時(shí)其對(duì)應(yīng)的輸
32、入端由低電平變?yōu)楦唠娖綇亩?51單片機(jī)中斷中 斷服務(wù)程序的任務(wù)是判定故障并 點(diǎn)亮對(duì)應(yīng)的發(fā)光二極管發(fā) 光二極管 LED1LED3 對(duì)應(yīng)三個(gè)輸入端 X1X3試編程5VEAP13P148031P15INT0 X1X2X3LED1LED2LED3P10P11P12218 題圖解參考程序如下ORG 0000HLJMP MAINORG 0003HLJMP INT0SERORG 0100HMAIN MOV P10FFHSETB IT0SETB EX0SETB EALOOP AJMP LOOPINT0SER JNB P10L1CLRP13L1 JNB P11L2CLRP14L2 JNB P12L3CLRP
33、15L3 RETEND219 設(shè)某單片機(jī)應(yīng)用系統(tǒng)的 P1 口連接如第 219 題圖所示要求根據(jù) K0 的合斷情況決定 D1D0的點(diǎn)亮如果 K0 合上D0 點(diǎn)亮如果 K0 斷開(kāi)D1 點(diǎn)亮試編程實(shí)現(xiàn)之解ORG 0000HLJMP MAINORG 0100HMAIN MOV P10C0HLOOP JB P17ELSECLRP1020AJMP LOOPELSE CLRP11AJMP LOOPEND5V5VEAK0D0D1P17P11P108031第 219 題圖220 設(shè)某單片機(jī)應(yīng)用系統(tǒng)的 P1 口連接如第 220 題圖所示問(wèn)5V5VEAK0K1D0D1P17P16P11P108031第 220 題圖
34、 1 執(zhí)行第一條指令后哪些指示燈會(huì)亮 2 第二條指令的用處 3 執(zhí)行下列指令到最后A 要求寫出分析過(guò)程MOV P10EHORL P1C0HMOV AP1ANL AC0H解 1 D1 會(huì)亮2為 P17P16 的輸入做準(zhǔn)備3A 的內(nèi)容為 80H221 MCS51怎樣實(shí)現(xiàn)上電復(fù)位與操作復(fù)位并請(qǐng)綜述各專用寄存器復(fù)位后的狀態(tài)解與其他計(jì)算機(jī)一樣MCS51單片機(jī)系統(tǒng)有上電復(fù)位和操作復(fù)位兩種方法所謂上電復(fù)位是21指計(jì)算機(jī)上電瞬間要在 RST 引腳上出現(xiàn)寬度大于 10ms 的正脈沖使計(jì)算機(jī)進(jìn)入復(fù)位狀態(tài)操作復(fù)位指用戶按下復(fù)位按鈕使計(jì)算進(jìn)入復(fù)位狀態(tài)復(fù)位是靠外部電路實(shí)現(xiàn)的221 題圖是上電復(fù)位及按鈕復(fù)位的一種實(shí)用電路
35、上電時(shí)5V 電源立即對(duì)單片機(jī)芯片供電同時(shí)經(jīng)R 對(duì) C3 充電C3 上電壓建立的過(guò)程就是負(fù)脈沖的寬度經(jīng)倒相后RST 上出現(xiàn)正脈沖使單片機(jī)實(shí)現(xiàn)了上電復(fù)位按鈕按下時(shí) RST 上同樣出現(xiàn)高電平實(shí)現(xiàn)了操作復(fù)位在應(yīng)用系統(tǒng)中有些外圍芯片也需要復(fù)位如果這些芯片復(fù)位端的復(fù)位電平與單片機(jī)一致則可以與單片機(jī)復(fù)位腳相連因此非門在這里不僅起到了倒相作用還增大了驅(qū)動(dòng)能力電容 C1C2 起濾波作用防止干擾竄入復(fù)位端產(chǎn)生誤動(dòng)作10 K W1 C 2 C3 CCC V100 pF 10 F 10 F221 題圖 復(fù)位電路各專用寄存器復(fù)位后的狀態(tài) 如下表所示22第 3 章 MCS51系列單片機(jī)的指令系統(tǒng)31 MCS51系列單片機(jī)
36、的尋址方式有哪幾種請(qǐng)列表分析各種尋址方式的訪問(wèn)對(duì)象與尋址范圍解立即尋址寄存器尋址寄存器間接尋址直接尋址基址寄存器加變址寄存器間接尋址相對(duì)尋址位尋址尋址方式 訪問(wèn)對(duì)象 尋址范圍立即尋址 立即數(shù) 寄存器尋址工作寄存器 R0R7累加器A 寄存器 B 數(shù)據(jù)指針DPTR位處理器 C00H1FHE0HF0H82H83H寄存器間接尋址 RAM 單元 內(nèi)部 RAM 及外部擴(kuò)展的64KRAM直接尋址 ROM 和 RAM 內(nèi)部 RAM 00H7FHSFR80HFFHROM64KB變址尋址 ROM ROM 0000HFFFFH相對(duì)尋址 ROM ROM 0000HFFFFH位尋址 位尋址區(qū) 內(nèi) RAM 20H2FH中
37、的可尋址位SFR 中的可尋址位32 要訪問(wèn)片內(nèi) RAM可有哪幾種尋址方式 解對(duì)于 51 系列要訪問(wèn)片內(nèi) RAM有間接尋址直接尋址位尋址52 子系列訪問(wèn)片內(nèi)低 128個(gè)字節(jié)有直接尋址位尋址間接尋址高 128 字節(jié)有間接尋址33 要訪問(wèn)片外 RAM可有哪幾種尋址方式 解訪問(wèn)片外 RAM 有寄存器間接尋址方式34 要訪問(wèn) ROM可有哪幾種尋址方式 解要訪問(wèn) ROM 有直接尋址變址尋址相對(duì)尋址35 試分別對(duì) 51 子系列和 52 子系列說(shuō)明 MOV Adirect 指令與 MOV ARj 指令的訪問(wèn)范圍解MOV Adirect 指令中 direct 對(duì)于 51 子系列的訪問(wèn)范圍為內(nèi) RAM 中的低 1
38、28B 單元從 00H到 7FH訪問(wèn) SFR 的范圍是從 80H 到 FFH52 子系列的訪問(wèn)范圍與 51 子系列的訪問(wèn)范圍相同MOV ARj 指令對(duì)于 51 子系列的訪問(wèn)范圍為內(nèi) RAM 的 128B 單元從 00H 到 7FH對(duì)于52 子系列的訪問(wèn)范圍為片內(nèi) RAM 從 00H 到 FFH36 傳送指令中有哪幾小類是訪問(wèn) RAM 的哪幾個(gè)類是訪問(wèn) ROM 的CPU 訪問(wèn) ROM 多不多什么時(shí)候需要訪問(wèn) ROM解 訪問(wèn) RAM 的有以累加器 A 為一方的傳送指令不以累加器為一方的傳送指令用立即數(shù)置數(shù)的指令訪問(wèn)片外 RAM 的傳送指令 進(jìn)棧出棧指令交換指令訪問(wèn) ROM 的有 基址寄存器加變址寄
39、存器間址指令23因?yàn)?ROM 是只讀存儲(chǔ)器用作程序存儲(chǔ)器已事先存入各種程序常數(shù)表格等CPU 訪問(wèn)ROM 不多當(dāng)執(zhí)行程序程序轉(zhuǎn)移以及用戶訪問(wèn)時(shí)需要訪問(wèn) ROM37 區(qū)分下列指令的不同功能 MOV A 24H 與 MOV A24H MOV A R0 與 MOV A R0 MOV A R0 與 MOVX AR0解 前者是將立即數(shù) 24H 送入 A 中后者是將 24H 單元的內(nèi)容送入 A 中 2 前者將 R0 中的內(nèi)容送入 A 中后者是將以R0 中的內(nèi)容為地址所在單元的內(nèi)容送入 A 中 3 前者是將片內(nèi) RAM 以 R0 中的內(nèi)容為地址所在單元的內(nèi)容送入 A 中后者是將片外 RAM的以 R0 中的內(nèi)容
40、為地址所在單元的內(nèi)容送入 A 中38 設(shè)片內(nèi) RAM30H 單元的內(nèi)容為 40H設(shè)片內(nèi) RAM40H 單元的內(nèi)容為 10H片內(nèi) RAM10H 單元的內(nèi)容為 00H P1 0CAH請(qǐng)寫出下列指令執(zhí)行后的結(jié)果MOV R0 30HMOV A R0MOV R1 AMOV B R1MOV R0 P1MOV P3 P1MOV 10H 20HMOV 30H 10H解 MOV R0 30H R030HMOV A R0 A40HMOV R1 A R140HMOV B R1 B10HMOV R0 P1 30H 0CAHMOV P3 P1 P30CAHMOV 10H 20H 10H20HMOV 30H 10H 30
41、H20H39 已知 A 35H R0 6FH P1 90H FCH SP C0H試寫出下列指令的執(zhí)行結(jié)果 1 MOV R6A 2 MOV R0A 3 MOV A90H 4 MOV A90H 5 MOV 80H81H 6 MOVX R0A 7 PUSH A 8 SWAP A 9 XCH AR024解 1 MOV R6 A R6 35H 2 MOV R0 A 6FH 35H 3 MOV A 90H A 90H 4 MOV A 90H A FCH 5 MOV 80H 81H 80H 81H 6 MOV R0 A 6FH 35H 7 PUSH A SP C1H C1H 35H 8 SWAP A A 5
42、3H 9 XCH A R0 A 6FH R0 35H310 已知 A 02H R 1 7FH D PTR 2FFCH片 內(nèi) RAM 7FH 70H片 外 RAM 2FFEH 11HROM 2FFEH 64H試分別寫出下列指令的執(zhí)行結(jié)果 1 MOV A R1 2 MOVX DPTRA 3 MOVC AADPTR 4 XCHD AR1解1 A 70H 2 片外 RAM2FFCH 02H3 A 64H 4 A 00H 片內(nèi) RAM7FH 72H311 已知 A 78H R1 78H B 04HC 1片內(nèi) RAM 78H DDH片內(nèi) RAM 80H 6CH試分別寫出下列指令的執(zhí)行結(jié)果如涉及標(biāo)志位也要寫
43、出 1 ADD A R1 2 ADDC A78H 3 SUBB A77H 4 INC R1 5 DEC 78H 6 MUL AB 7 DIV AB 8 ANL 78H78H 9 ORL AOFH 10 XRL 80HA解1A 55H PSW 11×××1×02A 56H PSW 11×××1×03A 00H PSW 00×××0×0254R1 79H578H DCH6BA 01E0H C 1 OV 17B 00HA 1EH878H 58H9A 7FH1080H 14H312
44、請(qǐng)對(duì)下列各組數(shù)分別計(jì)算與或異或的結(jié)果 1 10011010B 和 00001111B 2 11010011B 和 01011010B 3 11001100B 和 00110011B 4 10101010B 和 11111111B解1結(jié)果分別為 00001010B 10011111B 10010101B2結(jié)果分別為 01010010B 11011011B 10001001B3結(jié)果分別為 00000000B 11111111B 11111111B4結(jié)果分別為 10101010B 11111111B 01010101B313 為達(dá)到下列要求請(qǐng)說(shuō)明應(yīng)采用何種邏輯操作采用什么操作數(shù)要求不得改變各未涉及位
45、的內(nèi)容 1 使累加器的最低位置1 2 清除累加器的高四位 3 使 A2 和 A 3 置 1 4 清除 A3A 4 A5A 6解1邏輯或操作 操作數(shù)00000001B2邏輯與操作 操作數(shù)00001111B3邏輯或操作 操作數(shù)00001100B4邏輯與操作 操作數(shù)10000111B314 寫出下列各條指令的機(jī)器碼并逐條寫出依次執(zhí)行每一條指令后的結(jié)果和 PSW 的內(nèi)容 1 CLR A 2 MOV A 9BH 3 MOV B0AFH26 4 ADD AB解 1機(jī)器碼 E4H A 02機(jī)器碼 749BH A 9BH3機(jī)器碼 75F0AFH A AFH4機(jī)器碼 25F0H A 4AH PSW 11XXX1
46、X1B315 要選用工作寄存器 3 組請(qǐng)采用三種不同的指令實(shí)現(xiàn)之解 1 SETB PSW4SETB PSW32 ORL PSW18H3 MOV PSW18H316 列舉三種能使累加器 A 內(nèi)容清零的指令并比較其優(yōu)缺點(diǎn)解 1 ANL A00H2 MOV A00H3 CLR A317 回答問(wèn)題 1 算術(shù)操作類指令對(duì)標(biāo)志位的影響 2 邏輯操作類指令對(duì)字節(jié)內(nèi)容的修改解1算術(shù)操作指令的執(zhí)行將影響特殊功能寄存器中狀態(tài)寄存器 PSW 的 3 個(gè)標(biāo)志位CPSW7進(jìn)位標(biāo)志AcPSW6輔助進(jìn)位標(biāo)志OVPSW2輔助進(jìn)位標(biāo)志3 個(gè)標(biāo)志除特別指出外指令服從以下規(guī)則 操作結(jié)果在最高位有進(jìn)位輸出加法時(shí)或借位輸入減法時(shí)C 1
47、否則C 0 操作結(jié)果的低 4 位有進(jìn)位輸出 加法時(shí)或 有向高4 位的借位 減法時(shí)A c 1否 則A c 0 溢出標(biāo)志OV滿足邏輯關(guān)系式OV C6? C 7C6 為加法時(shí)累加器 A 的 D6 位向 D7 產(chǎn)生的進(jìn)位或減法時(shí)累加器 A 的 D6 位向 D7 產(chǎn)生的借位有進(jìn)位或借位時(shí)C6 1C7 為加法時(shí)累加器 A 的 D7 位向更高位產(chǎn)生的進(jìn)位或減法時(shí)累加器 A 的 D7 位向更高位產(chǎn)生的借位有進(jìn)位或借位時(shí)C7 1OV 標(biāo)志位常用于加減指令對(duì)帶符號(hào)數(shù)做補(bǔ)碼加減運(yùn)算時(shí)OV 1 表示加減運(yùn)算的結(jié)果超出了 A 所能表示的帶符號(hào)數(shù)的范圍1281272若要對(duì)內(nèi)部的某幾位清零而其它位保持不變可以選用 ANL
48、directdata 指令在需27要清零的位上對(duì)應(yīng)的 data 的相應(yīng)位清零 若要對(duì)內(nèi)部的某幾位置 1 可以選用ORL directdata 指令在需要置 1 的位上對(duì)應(yīng)的 data的相應(yīng)位置 1 若要對(duì)內(nèi)部的某幾位求反可以選用XRL directdata 指令在需要求反的位上對(duì)應(yīng)的 data的相應(yīng)位置 1若要對(duì)內(nèi)部 RAM 某單元求反可以選用 XRL direct0FFH318 要將片內(nèi) RAM 0FH 單元的內(nèi)容傳送去專用寄存器 B對(duì) 0FH 單元的尋址可有三種方法 1 R 尋址 2 R 間址 3 Direct 尋址請(qǐng)分別編寫出相應(yīng)程序比較其字節(jié)數(shù)機(jī)器周期數(shù)和優(yōu)缺點(diǎn)解 1 MOV R00F
49、HMOV BR0 2 MOV R00FHMOV BR0 3 MOV B0FH 1 占四個(gè)字節(jié)數(shù)四個(gè)機(jī)器周期數(shù) 2 占四個(gè)字節(jié)數(shù)四個(gè)機(jī)器周期數(shù) 3 占三個(gè)字節(jié)數(shù)三個(gè)機(jī)器周期數(shù)所以第三種方法最好319 設(shè) R0 7EH DPTR 10FEH片 內(nèi) RAM 7EH 單元的內(nèi)容為 0FFH7F單元的內(nèi)容為 38H試為下列程序的每條指令注釋其執(zhí)行結(jié)果INC R0INC R0INC R0INC DPTRINC DPTRINC DPTR解 INC R0將 7EH 單元的內(nèi)容加1即 7EH00HINC R0 R07FHINC R0 7FH39HINC DPTR DPTR10FFHINC DPTR DPTR11
50、00HINC DPTR DPTR1101H28320 試編程引用與運(yùn)算判斷某 8 位二進(jìn)制數(shù)是奇數(shù)還是偶數(shù)解 設(shè)該 8 位二進(jìn)制數(shù)放在累加器 A 中如果是奇數(shù)將 F0 標(biāo)志置 1如果是偶數(shù)將 F0 標(biāo)志清 0ORG 2000HSTARTMOV R0AANL A01HJZ LOOPMOV AR0SETB PSW5SJMP HERELOOP MOV AR0CLR PSW5HERE SJMP HERE321 試編程引用或運(yùn)算使任意 8 位二進(jìn)制數(shù)的符號(hào)位必為1解 ORG 2000HSTARTORL A80H322 請(qǐng)思考引用異或運(yùn)算怎樣可使一帶符號(hào)數(shù)的符號(hào)位改變數(shù)據(jù)位不變?cè)鯓涌墒乖摂?shù)必然變0解 將該
51、數(shù)與 80H 相異或就可以改變其符號(hào)位而數(shù)值位保持不變將該數(shù)與其本身相異或就可以使該數(shù)必然為 0323 要選擇工作寄存器組可有幾種編程辦法解可以采用如下三種辦法1 SETB PSW4SETB PSW32 ORL PSW18H3 MOV PSW18H324 設(shè) ROM片內(nèi) RAM片外 RAM 各有關(guān)單元的內(nèi)容示如下圖問(wèn)執(zhí)行下列程序段后 A 0000 AJMP 030HORG 0030H0030 MOV R032H29MOV AR0MOV R1AMOVX AR1MOVC AADPTR30H33H32H31H30H31H32H33H片內(nèi)RAM30H33H32H31H32H30H33H31H片外RAM
52、0030H0033H0032H0031H30H33H31H32HROM解 A 30H325 若在片內(nèi) RAM30H 單元中有二位壓縮的 BCD 碼 95H問(wèn)執(zhí)行下列程序后片內(nèi) RAM30H 單元的內(nèi)容是什么31H32H 的內(nèi)容又是什么并寫出 BCD 碼十進(jìn)制調(diào)整的過(guò)程MOV R030HMOV AR0ANL A0FHMOV R3AMOV AR0SWAP AANL A0FHADD AR3DA AMOV R0AMOV R3AINC R0ANL A0FHMOV R0AINC R0MOV AR3ANL A0F0HSWAP AMOV R0ARET解 30H 14H 31H 04H 32H 01H30第 4
53、 章 MCS51匯編語(yǔ)言程序設(shè)計(jì)41 請(qǐng)解釋下列名詞機(jī)器碼 助記符 操作碼 操作數(shù) 源程序 目標(biāo)程序 匯編程序 匯編語(yǔ)言 匯編語(yǔ)言程序 匯編指令 匯編 機(jī)器匯編 人工匯編解機(jī)器碼 二進(jìn)制代碼形式的指令操作碼 用指令的英文縮寫表示便于辨識(shí)指令的功能也便于記憶稱為助記符操作數(shù) 是參與該指令操作的操作數(shù)或操作數(shù)所在的地點(diǎn) 尋址方式 有時(shí)用一個(gè)表達(dá)式來(lái)表示一個(gè)操作數(shù)例如TAB 十 1源程序 匯編語(yǔ)言程序與高級(jí)語(yǔ)言程序目標(biāo)程序 二進(jìn)制代碼形式的程序匯編程序 機(jī)器匯編時(shí)用到的軟件匯編語(yǔ)言 用縮寫的英文單詞表示操作碼用字母數(shù)字表示操作數(shù)的語(yǔ)言匯編語(yǔ)言程序 用匯編指令書寫的程序匯編指令 用縮寫的英文單詞表示操作碼用字母數(shù)字表示操作數(shù)的指令匯編 將匯編語(yǔ)言源程序翻譯成目標(biāo)程序的過(guò)程機(jī)器匯編 由機(jī)器完成匯編工作人工匯編 由編程人員手工完成匯編
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年智能計(jì)量終端項(xiàng)目規(guī)劃申請(qǐng)報(bào)告
- 2025年有聲閱讀項(xiàng)目提案報(bào)告模板
- 2025年抗滴蟲病藥項(xiàng)目立項(xiàng)申請(qǐng)報(bào)告模板
- 2025年加氣加注設(shè)備項(xiàng)目規(guī)劃申請(qǐng)報(bào)告模板
- 2024-2025學(xué)年西鄉(xiāng)塘區(qū)數(shù)學(xué)三上期末復(fù)習(xí)檢測(cè)模擬試題含解析
- 2025年水質(zhì)分析儀項(xiàng)目立項(xiàng)申請(qǐng)報(bào)告
- 2025年印刷品項(xiàng)目立項(xiàng)申請(qǐng)報(bào)告
- 2025年工業(yè)物聯(lián)網(wǎng)項(xiàng)目提案報(bào)告
- 2025年涂料光亮劑項(xiàng)目立項(xiàng)申請(qǐng)報(bào)告模稿
- 2024年礦山槽探工程承包合同版B版
- 小學(xué)體育知識(shí)樹(shù)PPT課件(帶內(nèi)容)
- 汽車標(biāo)準(zhǔn)件手冊(cè)
- 全球試驗(yàn)室儀器耗材國(guó)際品牌簡(jiǎn)介
- 鋼抱箍+工字鋼梁在蓋梁施工中的應(yīng)用
- 瀝青配合比匯總
- 消防聯(lián)動(dòng)調(diào)試記錄(2)
- 追求“真實(shí)、樸實(shí)、扎實(shí)”的語(yǔ)文課堂
- 工業(yè)機(jī)器人論文
- UC2845的應(yīng)用和PWM變壓器設(shè)計(jì)
- 螺桿空壓機(jī)操作規(guī)程完整
- 圓柱螺旋扭轉(zhuǎn)彈簧計(jì)算公式EXCEL計(jì)算
評(píng)論
0/150
提交評(píng)論