《匯編語言 微機(jī)原理及接口技術(shù)》(第2版)課后習(xí)題答案_第1頁
《匯編語言 微機(jī)原理及接口技術(shù)》(第2版)課后習(xí)題答案_第2頁
《匯編語言 微機(jī)原理及接口技術(shù)》(第2版)課后習(xí)題答案_第3頁
《匯編語言 微機(jī)原理及接口技術(shù)》(第2版)課后習(xí)題答案_第4頁
《匯編語言 微機(jī)原理及接口技術(shù)》(第2版)課后習(xí)題答案_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1 第 1 章 進(jìn)制及碼元 1進(jìn)制轉(zhuǎn)換 129= 81H= 10000001B=201Q 298= 12100101010B=452Q 1000= 31111101000B= 1750Q 5 1011101 B= 135 Q= 93 D 3 1111101000 B= 1750Q= 1000 D 357Q=11101111 B= 0= 239 D 3數(shù)據(jù)表示范圍: 一字節(jié)的無符號數(shù)表示范圍為 0 255,有符號數(shù) (補(bǔ)碼 )表示范圍為 127。一個(gè)字的無符號數(shù)表示范圍為 0 65535,有符號數(shù) (補(bǔ)碼 )表示范圍為 32768 +32767。 N 位二進(jìn)制數(shù)的無符號數(shù)表示范圍為 0 (2 有符號數(shù) (補(bǔ)碼 )表示范圍為 (2 4 35H 代表的 符為 5,代表十六進(jìn)制數(shù)時(shí)等價(jià)的十進(jìn)制值為 53 ,代表壓縮8421等價(jià)的十進(jìn)制值為 35 ,代表非壓縮 8421等價(jià)的十進(jìn)制值為 5。 5 表無符號數(shù)時(shí)等價(jià)的十進(jìn)制值為 255 ,代表補(bǔ)碼有符號數(shù)時(shí)等價(jià)的十進(jìn)制值為 一 1 ,代表反碼有符號數(shù)時(shí)等價(jià)的十進(jìn)制值為 一 0 ,代表原碼有符號數(shù)時(shí)等價(jià)的十進(jìn)制值為 一 6 8 位二進(jìn)制補(bǔ)碼為 ,原碼為 94H ,反碼為 。 158 的 16 位二進(jìn)制補(bǔ)碼為 009碼為 009,反碼為 009。 第 2 章 微機(jī)硬件基礎(chǔ) 1計(jì)算機(jī)系統(tǒng)硬件的五大功能部件及其主要功能 ? 答:硬件系統(tǒng)按功能模塊分為運(yùn)算器、控制器、存儲器、輸入設(shè)備、輸出設(shè)備。 運(yùn)算器主要完成算術(shù)運(yùn)算、邏輯運(yùn)算及移位運(yùn)算,其中主要包括算術(shù)邏輯運(yùn)算單元暫存數(shù)據(jù) (原始、中間、結(jié)果 )的寄存器 (R)。 控制器實(shí)現(xiàn)對計(jì)算機(jī)部件的協(xié)調(diào)調(diào)度完成指令的分析執(zhí)行,其中主要有程序計(jì)數(shù)器叫指令指針 (指令寄存器 (R)、指令譯碼器 (微操作命令發(fā)生器、時(shí)序發(fā)生器等。 存儲器用來記憶程序與數(shù)據(jù),它分為內(nèi)存和外存,內(nèi)存主要用于存放正在或正待運(yùn)行的程序和數(shù)據(jù),外存用于存放暫時(shí)不運(yùn)行的程 序和數(shù)據(jù)。 輸入設(shè)備是實(shí)現(xiàn)將外界的信息輸入計(jì)算機(jī)內(nèi)部的部件,主要有鍵盤、鼠標(biāo)等。 輸出設(shè)備是實(shí)現(xiàn)將計(jì)算機(jī)內(nèi)部的信息輸出的部件,主要有顯示器、打印機(jī)等。 3請簡述計(jì)算機(jī)系統(tǒng)的構(gòu)成,并說明軟硬件之間的關(guān)系。 答 :計(jì)算機(jī)系統(tǒng)由硬件系統(tǒng)和軟件系統(tǒng)構(gòu)成 ,硬件系統(tǒng)包括運(yùn)算器、存儲器、控制器、輸入 /輸出設(shè)備 硬件是我們可以看得見摸得著的物理設(shè)備 ,軟件是運(yùn)行計(jì)算機(jī)硬件上的程序和數(shù)據(jù)的集合 硬件是基礎(chǔ) ,軟件是靈魂 ;硬件和軟件相輔相成缺一不可 ;硬件和軟件互相促進(jìn)發(fā)展 . 5微機(jī)的主要性能指標(biāo)有哪些 ? 答: (1)字長。字長是指 以同時(shí)運(yùn)算或傳輸?shù)亩M(jìn)制的數(shù)據(jù)位數(shù)。字長越長,速度越快,精度越高,表示范圍越大。 (2)速度。在微機(jī)的表示速度用的最多的是 主頻,單位為 實(shí)質(zhì)2 上并不一定是主頻越高速度越快,如 出的 示法聲稱其 l 3速龍 以達(dá)到 l 6 速度。表示速度還有另外兩個(gè)單位:次,秒 (每秒運(yùn)算次數(shù) )、 萬條指令每秒 )。 (3)容量。內(nèi)存容量從原來的 上升到 2002 年上半年以 256主流配置。硬盤容量從原來的 上升到 前主要配置 40硬盤: (4)外設(shè)配置。例如顯示器、光驅(qū)、聲卡、音箱、打印機(jī)等。 (5)軟件配置。操作系統(tǒng)及其他系統(tǒng)軟件和應(yīng)用軟件。 7 8086 8088 什么要分為 大模塊 ? 答: 為了使取指和分析、執(zhí)行指令可并行處理,提高 執(zhí)行效率。 8086/88兩大模塊總線接口單元 執(zhí)行單元 成。 參見教材匯編語言、微機(jī)原理及接口技術(shù) (第2 版 ) 2 3 1 節(jié) “8086 8088 內(nèi)部結(jié)構(gòu) ”。 8簡述 8086 8088 兩大模塊 主要功能及組成。 答:如圖 2 2 所示。 9簡述 8086 8088 14 個(gè)寄存器的英文名、中文名及主要作用。 答: 加器,它是匯編編程中最常用的一個(gè)寄存器,主要用于乘除運(yùn)算、 算、換碼、 I O 操作、串操作、中斷調(diào)用等。 址寄存器,主要用于存放地址、基址 (默認(rèn)相對于 )等。 數(shù)器,主要用于循環(huán)計(jì)數(shù)、串操作計(jì)數(shù)、移位計(jì)數(shù) (。 據(jù)寄存器,主要用于 乘除、問接 I O、中斷調(diào)用等。 址指針,主要用于存放地址、基址 (默認(rèn)相對于 )等。 棧指針 (棧頂指針 ),主要用于存放棧頂?shù)刂贰?變址寄存器,用于存放地址、變址、串操作源變址。 的變址寄存器,用于存放地址、變址、串操 作目的變址。 碼段寄存器 (代碼段 ),用于存放正在或正待執(zhí)行的程序段的起始地址的高 二進(jìn)制數(shù)據(jù),即程序段的段地址。 , 據(jù)段寄存器 (數(shù)據(jù)段 ),用于存放正在或正待處理的一般數(shù)據(jù)段的起始地址的高 二進(jìn)制數(shù)據(jù),即一般數(shù)據(jù)段的段地址。 加數(shù)據(jù)段寄存器 (附加段 ),用于存放正在或正待處理的附加數(shù)據(jù)段的起始地址的高 二進(jìn)制數(shù)據(jù),即附加數(shù)據(jù)段的段地址。 棧數(shù)據(jù)段寄存器 (堆棧段 ),用于存放正在或正待處理的堆棧數(shù)據(jù)段的起始地址的高 二進(jìn)制數(shù)據(jù),即堆棧數(shù)據(jù)段的段地址。 令指針,它的內(nèi)容始終是下一條待執(zhí)行指令的起始偏移地址,與起形成下一條待執(zhí)行指令的起始物理地址。 作用是控制程序的執(zhí)行流程。 般會自動加 l(邏輯加 1、實(shí)際隨指令長度變化 )移向下一條指令實(shí)現(xiàn)順序執(zhí)行;若通過指令修改 值,則可實(shí)現(xiàn)程序的轉(zhuǎn)移執(zhí)行。 序狀態(tài)字,它其中有三個(gè)控制標(biāo)志 ( 6 個(gè)狀態(tài)標(biāo)志 (控制標(biāo)志是用于控制 方面操作的標(biāo)志,狀態(tài)標(biāo)志是部分指令執(zhí)行結(jié)果的標(biāo)志。 11請說明 8086 8088 標(biāo)志位的英文名、中文名及通用填充方法。 答: 斷允許標(biāo)志,用于控制 否響應(yīng)可屏蔽中斷請求, 能夠響應(yīng), 不能響應(yīng)。 向標(biāo)志,用于指示串操作時(shí)源串的源變址和目的串的目的變 址變化方向, 減的方向變化, 向加的方向變化。 阱標(biāo)志 (單步中斷標(biāo)志 ), 程序執(zhí)行當(dāng)前指令后暫停, 程序執(zhí)行當(dāng)前指令后不會暫停。 號標(biāo)志,指令執(zhí)行結(jié)果的最高二進(jìn)制位是 0 還是 l,為 0,則 ,代表正數(shù);為 l,則 ,代表負(fù)數(shù)。我們一般是用十六進(jìn)制數(shù)表示,則可以根據(jù)十六進(jìn)制的最高位是落在 O 7 還是落在 8 F 之間,若落在 0 7 之間則 否則 。 偶校驗(yàn)標(biāo)志,指令執(zhí)行結(jié)果的低 8 位中 1 的個(gè)數(shù)是奇數(shù)個(gè)還是偶數(shù)個(gè),若為奇數(shù)個(gè)則 ,若為偶數(shù)個(gè)則 。 標(biāo)志,指令執(zhí)行結(jié)果是不是為 0,若為 0 則 ,否則 。 符號數(shù)的溢出標(biāo)志,指令執(zhí)行結(jié)果是否超出有符號數(shù)的表示范圍,若超過則 0F=1,否則 。我們可以通過判斷是否出現(xiàn)以下四種情況之一:正加正得負(fù),正減負(fù)得負(fù),負(fù)加負(fù)得正,負(fù)減正得正。若出現(xiàn)則 0F=1否則 位 借位標(biāo)志無符號數(shù)的溢出標(biāo)志 ),指令執(zhí)行結(jié)果的最高位是否有向更高位進(jìn)位或借位,若有則 ,同時(shí)也代表無符號數(shù)溢出;若無則 ,也代表無符號數(shù)未溢出。 助進(jìn)位借位標(biāo)志,低 4 位二進(jìn)制是不是有向高位進(jìn)位或借位,若有則 ,否則 ,其主要用于 正運(yùn)算。 12 內(nèi)存為什么要分段組織? 答: (1)8086 8088 的寄存器只有 16 位,如果采用它們直接尋址,則尋址能力勢必限制在 64 圍內(nèi),而采用分段組織可以較好地實(shí)現(xiàn)擴(kuò)展 尋址能力。每段的大小可達(dá) 64 同段的組合則可尋址更大的范圍。 (2)使程序與數(shù)據(jù)相對獨(dú)立,不同存取方式的數(shù)據(jù)也相對獨(dú)立。 程序:存放于代碼段 堆棧方式:存放于堆棧段 數(shù)據(jù):隨機(jī)方式:存放于數(shù)據(jù)段 附加段 (3)便于程序和數(shù)據(jù)的動態(tài)裝配,從一個(gè)地方挪到另外一個(gè)地方只要更改一下段寄存器的值即可,段內(nèi)偏移可以不用改變。但內(nèi)存地址采用分段組織增加地址計(jì)算的復(fù)雜度,降低了 執(zhí)行效率。 14設(shè) 608H, 求出使 向同一物理地址的 。 答:即 S: S: S X=266+108H=270S: S16+S16+9270 9672H 4 15接口、端口、端口地址之間的對應(yīng)關(guān)系如何 ? 答: 一個(gè)計(jì)算機(jī)系統(tǒng)內(nèi)有很多接口, 一個(gè)接口內(nèi)一般有多個(gè)端口,一個(gè)端口可以有多個(gè)端口地址與其對應(yīng) (這叫重疊地址 ),一個(gè)端口地址可以對應(yīng)多個(gè)端口 (但需要繼續(xù)區(qū)分才能訪問,如讀寫順序、讀寫信號、數(shù)據(jù)位、索引區(qū)分 )。 所以通過端口傳輸信息首先需要區(qū)分端口,區(qū)分端口可通過端口地址不同來區(qū)分。 20某程序在當(dāng)前數(shù)據(jù)段中存放有兩個(gè)數(shù)據(jù) 5678H,若已知 010H、偏移量分別為 3400H 和 4501H,請寫出這兩個(gè)數(shù)據(jù)在存儲器中的物理地址。 答:物理地址 l=6+010H16+3400H=23500H 23500H 單元存 34H, 23501H 單元存 12H 物理地址 2=6+010H16+4501H=24601H 24601H 單元存 78H, 24602H 單元存 56H 第 3 章尋址方式及指令系統(tǒng) 1指令是 以理解并執(zhí)行的操作命令,指令由 操作碼 和 操作數(shù) 兩部分組成,指令有兩個(gè)級別,即 機(jī)器級 和 匯編級 。 3指令主要有哪些分類方式及其主要類別是什么 ? 答:指令分類有不同的方式。按操作數(shù)的個(gè)數(shù)將指令分為零地址指令 (無操作數(shù) )、一地址指令 (只有一個(gè)操作數(shù) )、二地址指令 (有兩個(gè)操作數(shù) )、多地址指令 (多于兩個(gè)操作數(shù) );按指令級別分為機(jī)器指令和匯編指令:按是否轉(zhuǎn)移分為轉(zhuǎn)移指令和順序指令;按功能分為七大類:傳送 類、算術(shù)運(yùn)算類、位操作類、 I O 類、串操作類、 制類、轉(zhuǎn)移類;按指令長度 (即指令占用的字節(jié)數(shù) )分為 l 字節(jié)指令、 2 字節(jié)指令等, 8086 8088 指令長度是不同的,叫變字長,不同的指令有不同的指令長度,從 1 6 字節(jié)均有;按指令執(zhí)行期間取操作數(shù)是否需要與總線打交道分為內(nèi)部指令 (不需 )和外部指令 (需要 ),類似功能的指令內(nèi)部指令比外部指令執(zhí)行速度快,所以在編程時(shí)盡量采用內(nèi)部指令即多用寄存器優(yōu)化程序。 4操作數(shù)的尋址方式有哪些 ?并舉例說明其主要特點(diǎn)。 答: 操作數(shù)尋址方式主要有立即尋址方式、寄存器尋地址、 存儲器尋址方式、端口尋址方式 4 類 . (1)立即尋址方式 :操作對象是這個(gè)操作數(shù)本身 ,5 (2)寄存器尋地址 :操作對象是寄存器中的內(nèi)容 3)存儲器尋址方式 :操作對象是內(nèi)存地址所對應(yīng)的存儲單元中的內(nèi)容 ,X 4)端口尋址方式 :操作數(shù)是指明端口的地址、端口地址所對應(yīng)的端口中的內(nèi)容是操作對象 X, 46 A,4 直接尋址 . 6設(shè) 000H, 000H, 000H, 000H, 00H, 00H, 00H,00H, 00H,則 下一條待執(zhí)行指令的物理地址為多少 ? 當(dāng)前棧頂?shù)奈锢淼刂窞槎嗌?? 表的存儲單元的物理地址為多少 ? 表的存儲單元的物理地址為多少 ? I代表的存儲單元的物理地址為多少 ? 答: 下一條待執(zhí)行指令的物理地址 =6+000H16+0100H。 當(dāng)前棧頂?shù)奈锢淼刂?=6+000H16+200H=40200H。 表的存儲單元物理地址 =6+000H X 00H=20300H。 表的存儲單元物理地址 = P=4000H16+400 I 代 表 的 存 儲 單 元 物 理 地 址=6+I=3000H16+300H+500H=30800H 5 7試根據(jù)以下要求,分別寫出相應(yīng)的匯編語言指令。 (1)以寄存器 為基址變址尋址方式把存儲器中的一個(gè)字送到 存器。 答: I (2)以寄存器 偏移量 為寄存器相對尋址方式把存儲器中的一個(gè)字和 加,把結(jié)果送回到那個(gè)字單元。 答: X, 3)將 1 字節(jié)的立即數(shù) 086H 與以 為寄存器間接尋址方式的字節(jié)單元相比較。 答: I, 086H (4)將 高 4 位與低 4 位互換。 答: 4 ;或者 5)測試 第 3、 7、 9、 12、 13 位是否同時(shí)為 0。 答: 3288H; 0011001010001000B (6)將存放了 0 9 數(shù) 值的 存器中的內(nèi)容轉(zhuǎn)化為相應(yīng)的 0 9 的字符。 答: 30H ;或者 L, 30H (7)將存放了 A F字符的 存器中的內(nèi)容轉(zhuǎn)化為相應(yīng)的數(shù)值。 答: 37H 10指出下列指令錯(cuò)誤的原因。 答: (1)300 ; 300 超過字節(jié)數(shù)據(jù)表示范圍 (2) ; 能作為目的操作數(shù) (3) ;數(shù)據(jù)類型不匹配 (4)1000H : 立即數(shù)不能送給段寄存器 (5) ;數(shù)據(jù)類型不明確 (6) :段寄存器不能參加運(yùn)算 (7) ;存儲器間接尋址只能使用 個(gè)之一 (8) I ;加減兩個(gè)操作數(shù)不能同時(shí)為存儲操作數(shù) (9) ;條件轉(zhuǎn)移只有短轉(zhuǎn)移尋址方式 (10) ;少給一個(gè)表明移位次數(shù)的操作數(shù), l 或 2分別說明下列各組指令中的兩條指令的區(qū)別。 答: (1) 設(shè) 字變量名,則: 左為將 元的內(nèi)容送 為將 元的偏移地址送 設(shè) 字節(jié)變量名,則: 左為錯(cuò)誤指令,右為將 元的偏移地址送 設(shè) 常量名,則: 左為將 內(nèi)容送 為錯(cuò)誤指令 (2)0 0為將 高 4 位清 0,右為將 低 4 位置 1 (3)l l 左為短轉(zhuǎn)移, 2 字節(jié)的指令,轉(zhuǎn)移范圍為一 +127 右為近轉(zhuǎn)移, l 字節(jié)的指令,轉(zhuǎn)移范圍為 68+32 767 (4) 左為將 值送 為將 值作為相對 的內(nèi)存單元偏 移地址,取出字單元值送 (5) 為減法,并將 值存入 右為比較,做減法,但不會將 值存入 (6) 邊第操作數(shù)默認(rèn)為相對于 偏移的存儲器操作數(shù) 右邊第一操作數(shù)采用段超越,指定為相對于 偏移的存儲器操作數(shù) 13寫出判斷 正為負(fù)的程序段 (請至少 用三種方法 )。 答:方法一: 80H ;而后用 表負(fù)數(shù)轉(zhuǎn)移, 表正數(shù)轉(zhuǎn)移 方法二: 00H ;而后用 表正數(shù)轉(zhuǎn)移, 表負(fù)數(shù)轉(zhuǎn)移 方法三: 80H ;而后用 表負(fù)數(shù)轉(zhuǎn)移, 表正數(shù)轉(zhuǎn)移 方法四: ;而后用 表負(fù)數(shù)轉(zhuǎn)移, 表正數(shù)轉(zhuǎn)移 方法五: ;而后用 表負(fù)數(shù)轉(zhuǎn)移, 表正數(shù)轉(zhuǎn)移 方法六: 00H ;而后用 表正數(shù)轉(zhuǎn)移, 表負(fù)數(shù)轉(zhuǎn)移 方法七: 80H :而后用 表正數(shù)轉(zhuǎn)移, 表負(fù)數(shù)轉(zhuǎn)移 14思考題:試比較以下幾條指令的功能。 答: ;將 值送給 ;將 值作為偏移地址找到對應(yīng)的內(nèi)存單元中的值送給 I ;將 值作為偏移地址找到對應(yīng)內(nèi)存單元的偏移地址送給 即 值送給 ;將 值作為偏移地址找到對應(yīng)內(nèi)存單元的偏移地址送給 即 值送給 ;將 作為偏移地址找到對應(yīng)內(nèi)存單元中的第一個(gè)字值送給 第二個(gè)字值送 :將 作為偏移地址找到對應(yīng)內(nèi)存單元中的第一個(gè)字值送給 第二個(gè)字值送 5設(shè) B、 D 為字節(jié)變量, A、 C 為字變量,且 A 除 B 可能會溢出,試編寫無符號數(shù)或有符號數(shù) A B 商送 C,余數(shù)送 D。 答:可能會溢出則要考慮擴(kuò)展數(shù)據(jù)表示能力。 ;無符號數(shù)除法 ;有符號數(shù)除法 B B A A ;無符號擴(kuò)展 ;有符號擴(kuò)展 C, C, D, D, 6編寫程序段實(shí)現(xiàn) 32 位二進(jìn)制數(shù) 乘 設(shè)不溢出 )。 答:; X*10=X*8+X*2,用移位指令實(shí)現(xiàn) 1 1 : *2 ; 存 2 倍值 l 7 l ;再乘 2 l 1 :再乘 2 ; 8 倍 +2 倍 =10 倍 19程序理解執(zhí)行。 (1) l : 180 : 4H 15 : D ; L 即 : 15,商 數(shù) 序段執(zhí)行后, 說明:關(guān)鍵是要知道誰除以誰,特別注意是有符號除還是無符號除。 (2) 0 : R ; 0 : AL= : 4H, 0 : 9H 35H : 9H, 程序段執(zhí)行后, 0 , 9H。 說明:第 (1)、 (2)小題只要理解每條指令功能及對標(biāo)志位的影響,逐步進(jìn)行即可完成 。 (3) 08H l : 0 : 0序段執(zhí)行后 , 0 。 (4) 中 ; 二進(jìn)制高 位為 1,即落在負(fù)數(shù)范圍 ; 二進(jìn)制高位為 0,即落在正數(shù)范圍 程序段執(zhí)行后 , 0 。 說明:第 (3)(4)小題實(shí)質(zhì)是考查有符號數(shù)和無符號數(shù)大小的比較。 (5) 7587 : 538H 0: 508H : 8=003序段執(zhí)行后 003A H,即 58。 程序段的功能是:將兩位非壓縮 轉(zhuǎn)化為其對應(yīng)的十六進(jìn)制數(shù)。 說明:可用 令實(shí)現(xiàn)將十位和個(gè)位數(shù)值拼裝還原為 0 99 的十六進(jìn)制數(shù)。反之將 0 99 的數(shù)值分離成十位和個(gè)位可用 令實(shí)現(xiàn),教材匯編語言、微機(jī)原理及接口技術(shù) (第 2 版 )例 5 10 和例 5 13 中均有應(yīng)用。 20程序語句填空。 (1)下列是完成 1 20 之間的奇數(shù)累加和存于 的程序段: 10 ;循環(huán)次數(shù) 1 2 ;步長,參數(shù)改變 2)下列是在串長為 N 的串 查找是否有 M字符的程序段: N 7 ;串查找核心指令 ;轉(zhuǎn)到找到分支 (3) 下列是完成 1 位十六進(jìn)制數(shù) X 顯示的程序段: X 030H :或 30H 9 7 02H 21H (4) 將 的二進(jìn)制數(shù)看成壓縮 并送出顯示的程序段如下: 4 ;獲取十位 30H 2 ; 2 號功能調(diào)用顯示十位 21H 0 ;獲取個(gè)位 30H 21H 22假定 的內(nèi)容為帶符號數(shù), 內(nèi)容為無符號數(shù),請用比較指令和轉(zhuǎn)移指令實(shí)現(xiàn)以下條件轉(zhuǎn)移: (1)若 內(nèi)容超過 內(nèi)容,則轉(zhuǎn)到 答: A 2)若 內(nèi)容大于 內(nèi)容,則轉(zhuǎn)到 答: G 3)若 內(nèi)容未超過 內(nèi)容,則轉(zhuǎn)到 答: 4)判斷 比較是否產(chǎn)生溢出,若溢出則轉(zhuǎn)到 答: 5)若 內(nèi)容小于等于 內(nèi)容,則轉(zhuǎn)到 答: 6)若 內(nèi)容小于等于 內(nèi)容,則轉(zhuǎn)到 答: 3假設(shè) 量中存放的內(nèi)容為 1927H,寫出下列各條指令執(zhí)行后的 F、 值: (1) 2) 3) 4) 5) 6) : 1) 134 0 0 0 0 (2) 0821H 0 0 0 0 (3) 186 0 0 0 0 (4) 1 0 1 0 (5) 01 0 1 0 (6) 00 0 0 0 第 4 章 編語言 1名詞解釋 指令 偽指令 宏指令 匯編語句 匯編語言 匯編源程序 匯編程序 匯編 連接程序 連接 答: 指令:是 以理解并執(zhí)行的操作命令。 偽指令:是用于為匯編程序編譯時(shí)理解程序框架、分配空間(數(shù)據(jù)定義)等的匯編語句。 宏指令:實(shí)質(zhì)上就是有多條指令打包而成的一組指令的集合。 匯編指令:一行只 能寫一條匯編語句,一條匯編只能寫在一行內(nèi)。 匯編語言:語句中的表達(dá)式是在匯編過程中完成計(jì)算的,即翻譯之后的機(jī)器語言程序中是不包含表達(dá)式的。 匯編源程序 :主要有四步,錄入源程序、匯編、連接、運(yùn)行、調(diào)試運(yùn)行。(不準(zhǔn)確) 匯編程序:編寫匯編程序?qū)嵸|(zhì)上就是在記住程序框架的基礎(chǔ)上填寫兩空,即數(shù)據(jù)定義部分和功能程序部分。 匯編:格式: 盤符 路徑 程序基本名 建議程序基本名不要省略 . 連接程序 :? 連接 :盤符 路徑 程序基本名 建議程序基 本名不要省略 . 4請計(jì)算下列表達(dá)式的值。 答 (1) 3+6 3*4 ;注意運(yùn)算優(yōu)先級,值為 5 (2) (M ) ; M, N 中的較小值 (3) 5 (作為 8 位和 16 位二進(jìn)制數(shù)各為多少 ) ; 0 04) 20 7(作為 8 位和 16 位二進(jìn)制數(shù)各為多少 ) ; 04H 和 0004H 10 (5) 5 : 5 (6) 5 0 ; 7) (作為 8 位和 16 位二進(jìn)制數(shù)各為多少 ) ; 0 0為 8) 設(shè)有定義如下: A 2, 4, 6, 8 B 2, 4, 6, 8 C 5 , 4, 6, 8) 則 、 和 分別為多少 ? ; 1, 2, 2 、 和 分別為多少 ? ; 1, 1, 5 、 和 分別為多少 ? ; 1, 2, 10 7設(shè)有如下定義: A 1, B, ? 將改成內(nèi)存中存放次序相同的 等價(jià)定義語句。 答: A 8H, 56H, 34H, 12H, 1, 3 ), B, 3 ), 4 ) A 678H, 1234H, 1, 0, B, 0, 2 ) 說明:最好畫出內(nèi)存分配示意圖再做這類題目。 8設(shè)有如下定義: A 1101B, 34, 56Q, 78H, 4 ?), 請將改成內(nèi)存中存放次序相同的 等價(jià)定義語句。 答: A 207822 ), 4241H, 4443H B 782?, 44434241H 10設(shè)置一個(gè)數(shù)據(jù)段 中連續(xù)存放 6 個(gè)變量,用段定義語句和數(shù)據(jù)定義語句寫出數(shù)據(jù)段: (1)字符串變量: (2)數(shù)值字節(jié)變量: 127, 80H, 35Q, 1101110B。 (3) 4 個(gè) 0 的字變量。 (4) 元素個(gè)數(shù)。 (5) 用的字節(jié)數(shù)。 (6) 用的總字節(jié)數(shù)。 答: 1 127,一 l, 80H, 35Q, 3 4 ) 5 ;或 3 $一 1 第 5 章 匯編程序設(shè)計(jì) 3編程實(shí)現(xiàn)兩個(gè)字節(jié)變量相乘送字變量的程序。 答: 34H C ? S: A B C, : C=AB 4 ;返回 21H 編程實(shí)現(xiàn)從鍵盤接收兩個(gè) l 位十進(jìn)制數(shù)并計(jì)算和顯示 它們的積。 (如輸入 7 和 9 則顯示為: 7*9=63) 答: S: 1 ;錄入第一位 2L, 0 L, 9 30H * ;顯示 ”*” 2 21H H, 1 ;錄入第二位 21H 0 9 L, 30H ;相乘 ;分離十位和個(gè)位 ;暫存?zhèn)€位 12 :顯示十位 30H 2 21H ;顯示個(gè)位 30H 21H 421H 編程實(shí)現(xiàn)三個(gè)變量值的排序 (分別用無符號數(shù)和有符號數(shù)處理 )。 答:實(shí)現(xiàn) A、 B、 C 三個(gè)變量從小到大排序的程序如下。 34H C 23H S: A B ;無符號,有符號用 B A, C :無符號,有符號用 C A, B C ;無符號,有符號用 C B, 4 ;返回 21H 編程實(shí)現(xiàn)任意個(gè)有符號字節(jié)數(shù)據(jù)之和 (和要求用字變量存放 )。 答: ;任意個(gè)字節(jié)數(shù) 據(jù) N $ ;元素個(gè)數(shù) 13 ? A N 4 :返回 21H 編寫一子程序?qū)崿F(xiàn)從某字?jǐn)?shù)組中選出最大值。 答: 求數(shù)組元素最大值過程名 組首址為 素個(gè)數(shù)為 大值由 出。 ;有符號數(shù),若為無符號數(shù)則 0編寫一子程序?qū)崿F(xiàn)從某字?jǐn)?shù)組中求出平均值 (設(shè)其和不會超出范圍 )。 答:;求數(shù)組元素之和函數(shù) 組首址為 組元素個(gè)數(shù)為 由 出。 4 1從鍵盤接收一串字符,并另起一行逆序顯示該字符串。 答: 81, 0, 81 ) S: X, ;接收一串字符 20 ;顯示回車換行 2 21H 02 21H ;取接收的字符數(shù) ; 向串尾 ;逆向顯示 2 21H 425 第 6 章 086 8088 微處理器 1解釋題 (1)執(zhí)行部件 (2)總線接 件 (3)最大工作模式 (4)最小工作模式 (5)指令周期 (6)總線周期 (7)時(shí)鐘周期 (8)等待周期 (9)地址 數(shù)據(jù)分時(shí)復(fù)用 (10)時(shí)序 答: (1)執(zhí)行部件 指令譯碼器 ( 制邏輯、算術(shù)邏輯運(yùn)算單元 (通用寄存器 (標(biāo)志寄存器 (成,主要完成分析指令、執(zhí)行指令、 成、數(shù)據(jù)暫存和 (2)總線接口 指令指針 (指令隊(duì)列、段寄存器 (地址加法器和總線控制邏輯組成,主要完成取指、取數(shù)、存數(shù)、物理地址形成和總線控制等功能。 (3)最大工作模式是指 腳為低電平,它是相對于最小模式而言的,系統(tǒng)中除了 8086 8088 作為處理器外,還包含數(shù)值 運(yùn)算協(xié)處理器 8087、輸入輸出協(xié)處理器 8089,以及總線控制器 8288 和總線仲裁控制器 8289 等支持芯片,從而可以完成更復(fù)雜的運(yùn)算或控制任務(wù)。 (4)最小工作模式是指 腳為高電平,系統(tǒng)中只有 8086 8088 微處理器,系統(tǒng)中的所有控制信號都直接由 8086 8088 產(chǎn)生。 (5)指令周期是指從取出指令到指令執(zhí)行完畢所需要的時(shí)間。 (6)??偩€周期是指 過系統(tǒng)總線和 部器件完成一次信息傳輸 (讀信息或?qū)懶畔?)過程所需的時(shí)間。 (7)時(shí)鐘周期指的是 作的脈沖的寬度,即 率的倒數(shù), 是 最小計(jì)時(shí)單位。 (8)等待周期指的是當(dāng)慢速的外設(shè)在 3 個(gè)時(shí)鐘周期內(nèi)無法完成數(shù)據(jù)的讀寫操作時(shí),就會在 插入等待周期 (9)地址和數(shù)據(jù)共用同一引腳,但它們工作時(shí)間是分離的,即按時(shí)間分時(shí)工作。 (10)微機(jī)運(yùn)行過程中,完成指定任務(wù)所需的各步操作之間的時(shí)間順序及其相關(guān)引腳的定時(shí)關(guān)系即稱為工作時(shí)序。 4 8086 有哪兩種工作模式 ?其主要區(qū)別是什么 ? 答: 8086 有最大和最小兩種工作模式,最小工作模式是指 腳為高電平,系統(tǒng)中只有 8086 8088 微處理器,系統(tǒng)中的所有控制信號都直接由 生。最大工作模式是指腳為低電平,它是相對于最小模式而言的,系統(tǒng)中除了 8086 8088 作為處理器外,還包含數(shù)值運(yùn)算協(xié)處理器 8087、輸入輸出協(xié)處理器 8089,以及總線控制器 8288 和總線仲裁控制器 8289 等支持芯片,從而可以完成更復(fù)雜的運(yùn)算或控制任務(wù)。 6 8086 8088 的基本總線周期由幾個(gè)時(shí)鐘周期組成 ?C 中 時(shí)鐘周期是多少 ?一個(gè)輸入或輸出總線周期是多少個(gè)時(shí)鐘周期 ? 答: 8086 8088 的基本總線周期由 4 個(gè)時(shí)鐘周期組成。 C 中 時(shí)鐘周期是 210 個(gè)輸入或輸出總線周期至少是 4 個(gè)時(shí)鐘周期。 說明:總線周期 指令和傳送數(shù)據(jù)需要的時(shí)間。一個(gè)基本的總線周期由 4個(gè)時(shí)鐘周期 (T 狀態(tài) )組成,即 態(tài)。 (1)在 態(tài), 地址數(shù)據(jù)復(fù)用線 (地址狀態(tài)復(fù)用線 (1發(fā)送地址信息,產(chǎn)生本次操作的地址。 (2)在 態(tài), 總線上撤銷地址信息,并向地址狀態(tài)復(fù)用線 (發(fā)送本次操作的狀態(tài)信息 (在讀操作下,地址數(shù)據(jù)復(fù)用線 (空 (高阻 ),為接收數(shù)據(jù)做準(zhǔn)備;在寫操作下,地址 /數(shù)據(jù)復(fù)用線出現(xiàn)本次操作的數(shù)據(jù)。 (3)在 態(tài),地址,狀態(tài)復(fù)用線仍為狀態(tài)信息,地址數(shù)據(jù)復(fù)用線出現(xiàn)本次操作的數(shù)16 據(jù) (讀或?qū)憯?shù)據(jù) )。 (4)在有些情況下,外設(shè)或存儲器數(shù)據(jù)傳輸?shù)乃俣雀簧?向 出 “未準(zhǔn)備好 信號 (), 態(tài)后自動插入 1 個(gè)至多個(gè)等待周期 至 為止,進(jìn)入 態(tài)。 (5)在 態(tài),總線周期結(jié)束。 (6)若 執(zhí)行總線操作 (不訪問存儲器或 I O),系統(tǒng)總線則執(zhí)行空閑周期 執(zhí)行空閑周期時(shí),總線高 4 位保留前一個(gè)總線周期的狀態(tài)信息;若前一個(gè)總線周期為寫操作,則地址數(shù)據(jù)復(fù)用線仍保留寫數(shù)據(jù),若為讀操作,則地址數(shù)據(jù)復(fù)用線浮空。 7在 態(tài)下, 8086 8088 數(shù)據(jù)地址線上傳送的是什么信息 ?用哪個(gè)信號可將此信息鎖存起來 ?數(shù)據(jù)信息是在什么時(shí)候送出的 ?在 中是怎樣使系統(tǒng)地址總線和系統(tǒng)數(shù)據(jù)總線同時(shí)分別傳送地址信息和數(shù)據(jù)信息的 ?

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論