




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第一章
1.在計(jì)算機(jī)中為什么使用二進(jìn)制數(shù)存儲(chǔ)數(shù)據(jù)而不使用十進(jìn)制數(shù)存儲(chǔ)數(shù)據(jù)?
答:計(jì)算機(jī)是由大量的電子器件組成的,在這些電子器件中,電路的通和斷、電位的高和低,
用兩個(gè)數(shù)字符號(hào)"1”和"0”分別表示容易實(shí)現(xiàn)。同時(shí)二進(jìn)制的運(yùn)算法則也很簡(jiǎn)單,因此,在計(jì)
算機(jī)內(nèi)部通常用二進(jìn)制代碼來作為內(nèi)部存儲(chǔ)、傳輸和處理數(shù)據(jù)。
2.完成下列數(shù)制之間的轉(zhuǎn)換。
(1)01011100B=92D(2)0.10110011B=O.41D
(3)135D=1111101B(4)99.4375D=1100011.011IB
3.組合型BCD碼和非組合型BCD碼有什么區(qū)別?寫出卜進(jìn)制數(shù)254的組合型BCD數(shù)和
非組合型BCD數(shù)
答:1)BCD碼是通常的8421碼,它用4個(gè)二進(jìn)制位表示一個(gè)十進(jìn)制位,-個(gè)字節(jié)可以表
示兩個(gè)十進(jìn)制位,即00?99
2)非組合BCD碼用8個(gè)二進(jìn)制位表示一個(gè)十進(jìn)制位,實(shí)際上只是用低4個(gè)二進(jìn)制位表示
一個(gè)十進(jìn)制位0-9,高4位任意,但通常默認(rèn)為0
3)254(10)=001001010100(BCD)
254(10)=0010010100000100(BCD)
4.ASCII碼的編碼方法是什么?寫出十進(jìn)制數(shù)205和字符串人+8=(3的人5。1碼。
答:DASCII碼的編碼方法是使用7位二進(jìn)制數(shù)來表示所有的大寫和小寫字母,數(shù)字0到
9、標(biāo)點(diǎn)符號(hào),以及在美式英語中使用的特殊控制字符
2)十進(jìn)制2制的ASCH碼是:011000101
3)字符串A+B=C^JASCH碼是:412B423D43
5.機(jī)器數(shù)與真值有什么區(qū)別?機(jī)器數(shù)有哪些特點(diǎn)?
答:1)真值是所表示的數(shù)的大小,一般用十進(jìn)制表征。
機(jī)器數(shù)原碼,補(bǔ)碼,反碼都是機(jī)器數(shù)一種表現(xiàn)形式,或說都屬于機(jī)器數(shù)
2)機(jī)器數(shù)的特點(diǎn):
-:數(shù)的符號(hào)數(shù)值化?實(shí)用的數(shù)據(jù)有正數(shù)和負(fù)數(shù),由于計(jì)算機(jī)內(nèi)部的硬件只能表示兩種物
理狀態(tài)(用0和1表示),因此實(shí)用數(shù)據(jù)的正號(hào)“+”或負(fù)號(hào)在機(jī)器里就用一位二進(jìn)制的0
或1來區(qū)別。通常這個(gè)符號(hào)放在二進(jìn)制數(shù)的最高位,稱符號(hào)位,以0代表符號(hào)“+”,以1代
表符號(hào)因?yàn)橛蟹?hào)占據(jù)一位,數(shù)的形式值就不等于真正的數(shù)值,帶符號(hào)位的機(jī)器數(shù)對(duì)
應(yīng)的數(shù)值稱為機(jī)器數(shù)的真值。例如二進(jìn)制真值數(shù)-011011,它的機(jī)器數(shù)為1011011c
二:二進(jìn)制的位數(shù)受機(jī)器設(shè)備的限制。機(jī)器內(nèi)部設(shè)備一次能表示的二進(jìn)制位數(shù)叫機(jī)器的字
長(zhǎng),一臺(tái)機(jī)器的字長(zhǎng)是固定的。字長(zhǎng)8位叫一個(gè)字節(jié)(Byte),現(xiàn)在機(jī)器字長(zhǎng)一般都是字節(jié)
的整數(shù)倍,如字長(zhǎng)8位、16位、32位、64位。
6.寫出原碼、反碼、補(bǔ)碼的定義,并說明它們有哪些性質(zhì)。
答:1)原碼,是一種計(jì)算機(jī)中對(duì)數(shù)字的二進(jìn)制表示方法,是最簡(jiǎn)單的機(jī)器數(shù),數(shù)碼序列中最
高位為符號(hào)位,符號(hào)位為0表示正數(shù),符號(hào)位為1表示負(fù)數(shù);其余有效值部分用二進(jìn)制的絕
對(duì)值表示
2)反碼,是計(jì)算機(jī)中表示二進(jìn)制數(shù)的?種方法,若原碼的符號(hào)位不變,對(duì)其余位逐位取反,即
得到其反碼
3)補(bǔ)碼,正數(shù)的補(bǔ)碼與原碼相同,負(fù)數(shù)的補(bǔ)碼:符號(hào)位為1,其余位為該數(shù)絕對(duì)值的原碼
按位取反,然后整個(gè)數(shù)加L
4)性質(zhì)
7.計(jì)算機(jī)中為什么采用補(bǔ)碼形式存儲(chǔ)數(shù)據(jù)?當(dāng)計(jì)算機(jī)的字長(zhǎng)n=16時(shí),補(bǔ)碼的數(shù)據(jù)表示范
圍是多少?
答:原因:
1)因?yàn)槭褂醚a(bǔ)碼可以將符號(hào)位和其他位統(tǒng)一處理,同時(shí),減法也可以按加法來處理
2)兩個(gè)用補(bǔ)碼表示的數(shù)相加時(shí),如果最高位(符號(hào)位)有進(jìn)位,則進(jìn)位被舍棄
當(dāng)計(jì)算機(jī)的字長(zhǎng)n=16時(shí),補(bǔ)碼的數(shù)據(jù)表示范圍是:一32768?+32767
8.設(shè)機(jī)器字長(zhǎng)n=8,求下列各數(shù)的原碼、反碼和補(bǔ)碼。
(1)X=+11O1OO1B
原碼:X=01101001反碼:X=01101001補(bǔ)碼:X=01101001
(2)X=+1111000B
原碼:x=oiiiiooo反碼:x=oinlooo補(bǔ)碼:x=oimooo
(3)X=-1000000B
原碼:x=iioooooo反碼:x=ioinni補(bǔ)碼:x=noooooo
(4)X=-110101IB
原碼:X=11101011反碼:X=10010100補(bǔ)碼:X=10010101
9.微型計(jì)算機(jī)系統(tǒng)的硬件由哪些部件組成?簡(jiǎn)述它們的主要功能。
答:構(gòu)成計(jì)算機(jī)的硬件系統(tǒng)通常有“五大件”組成:輸入設(shè)備、輸出設(shè)備、存儲(chǔ)器、運(yùn)算器
和控制器。
輸入設(shè)備:將數(shù)據(jù)、程序、文字符號(hào)、圖象、聲音等信息輸送到計(jì)算機(jī)中。常用的輸入設(shè)
備有,鍵盤、鼠標(biāo)、數(shù)字化儀器、光筆、光電閱讀器和圖象掃描器以及各種傳感器等。
輸出設(shè)備:將計(jì)算機(jī)的運(yùn)算結(jié)果或者中間結(jié)果打印或顯示出來。常用的輸出設(shè)備有:顯示
器、打印機(jī)、繪圖儀等。
存儲(chǔ)器:將輸入設(shè)備接收到的信息以二進(jìn)制的數(shù)據(jù)形式存到存儲(chǔ)器中。存儲(chǔ)器有兩種,分
別叫做內(nèi)存儲(chǔ)器和外存儲(chǔ)器。
運(yùn)算器:是完成各種算術(shù)運(yùn)算和邏輯運(yùn)算的裝置,能作加、減、乘、除等數(shù)學(xué)運(yùn)算,也能
作比較、判斷、查找、邏輯運(yùn)算等。
控制器:是計(jì)算機(jī)機(jī)指揮和控制其它各部分工作的中心,其工作過程和人的大腦指揮和控
制人的各器官一樣
10.CPU執(zhí)行指令時(shí),通常需要哪些步驟?
答:取指令---分析指令---執(zhí)行指令。
11.簡(jiǎn)述計(jì)算機(jī)的基本工作原理。
答:計(jì)算機(jī)的基本原理是存貯程序和程莊控制。預(yù)先要把指揮計(jì)算機(jī)如何進(jìn)行操作的指令序
列(稱為程序)和原始數(shù)據(jù)通過輸入設(shè)備輸送到計(jì)算機(jī)內(nèi)存貯器中。每一條指令中明確規(guī)定
了計(jì)算機(jī)從哪個(gè)地址取數(shù),進(jìn)行什么操作,然后送到什么地址去等步驟
12.微型計(jì)算機(jī)的主要性能指標(biāo)有哪些?
答:常用的微型計(jì)算機(jī)性能指標(biāo)主要有:字長(zhǎng),主頻,內(nèi)存容量,指令書,基本指令執(zhí)行時(shí)
間,可靠性,兼容性,性能價(jià)格比等。
13.微型系統(tǒng)中采用了哪些先進(jìn)技術(shù)?簡(jiǎn)述這些先進(jìn)技術(shù)的主要特點(diǎn)。
答:微型系統(tǒng)中采用的先進(jìn)技術(shù):
第一"章-HF-
1.8086/8088CPU可直接尋址多少個(gè)內(nèi)存(字節(jié))單元?多少個(gè)I/O端口?它們的外部數(shù)據(jù)總
線各有多少根?
答:8086可尋址1M個(gè)內(nèi)存單元,65536個(gè)I/O端口,外部有16根數(shù)據(jù)線
8088可尋址1M個(gè)內(nèi)存單元,256個(gè)I/O端口,外部有8根數(shù)據(jù)線。
2.8086CPU由那兩部分組成?它們大致是如何工作的?
答:8086CPU由指令執(zhí)行單位和總線接口單元兩大部分構(gòu)成
工作過程:
1)讀存儲(chǔ)器
2)EU從指令隊(duì)列中取走指令,經(jīng)EU控制器譯碼分析后,向各部件發(fā)控制命令,已完成執(zhí)
行指令的操作
3)指令隊(duì)列滿,則BIU處于空閑狀態(tài)
4)指令執(zhí)行過程中,如果需要進(jìn)行存取數(shù)據(jù),EU就要求BIU完成相應(yīng)的總線周期
5)在程序轉(zhuǎn)移時(shí),先晴空隊(duì)列,再去新的地址處取之
6)ALU完成算術(shù)運(yùn)算,邏輯運(yùn)算或移位操作
3.CPU、EU和BIU的英文全稱和中文含義各是什么?
答:CPU的英文全稱是CentralProcessingUnit,中文名稱即中央處理單元,也稱為微處理器
是微型計(jì)算機(jī)的核心部件,由運(yùn)算器ALU,控制器,寄存器組以及總線接口等部件組成,
主要完成各種運(yùn)算,負(fù)責(zé)對(duì)整機(jī)的控制
EU與BIU
4.8086CPU有哪些寄存器?各有什么用途?
答:寄存器AX,AL:在乘法指令中,存放乘數(shù)和乘積;
在除法指令中,存放被除數(shù)和商;
在未組合BCD碼運(yùn)算的校正指令中;
在某些串操作指令(LODS,STOS,SCAS)中
在輸入輸出指令中作數(shù)據(jù)寄存器
寄存器AH:在LAHF指令中作目的寄存器
寄存器AL:在組合型BCD碼的加減法校正指令中
在XLAT指令中作目的寄存器
寄存器BX:在XLST指令中基址寄存器
寄存器CX:在循環(huán)指令中作循環(huán)次數(shù)計(jì)數(shù)器
寄存器CL:在移位指令中作移位次數(shù)計(jì)數(shù)器
寄存器DX:在字?jǐn)?shù)據(jù)的乘法和除法指令中輔佐累加器
寄存器SP:在堆棧操作中作堆棧指針
寄存器SI:在串操作指令中作源變址寄存器
寄存器DI:在串操作指令中作目的變址寄存器
5.兩個(gè)帶符號(hào)數(shù)10110100B和11000111B相加運(yùn)算后各標(biāo)志位的值是多少?哪些標(biāo)志位
是有意義的?
答:兩個(gè)帶符號(hào)數(shù)10110100B和11000111B相加運(yùn)算后各標(biāo)志位的值是101111011
PF=1,ZF=0,SF=0,OF=1是有意義的
6.說明下列8086引腳信號(hào)的功能AD15?ADO、A19/S6-A16/S3,錯(cuò)誤!不能通過編輯域代
碼創(chuàng)建對(duì)象八錯(cuò)誤!不能通過編輯域代碼創(chuàng)建對(duì)象。、M/錯(cuò)誤!不能通過編輯域代碼創(chuàng)建
對(duì)象。、CLK、RESET>INTR,NMLALE、DT/錯(cuò)誤!不能通過編輯域代碼創(chuàng)建對(duì)象<,、錯(cuò)
誤!不能通過編輯域代碼創(chuàng)建對(duì)象。。
答:AD15-AD0:地址/數(shù)據(jù)總線:A19/S6-A16/S3:地址/狀態(tài)總線;錯(cuò)誤!不能通過編輯
域代碼創(chuàng)建對(duì)象。:讀控制
錯(cuò)誤!不能通過編輯域代碼創(chuàng)建對(duì)象。:寫控制M/錯(cuò)誤!不能通過編輯域代碼創(chuàng)建對(duì)
象。:存取器I/O控制CLK:系統(tǒng)時(shí)鐘RESET:系統(tǒng)復(fù)位
INTR:可屏蔽中斷請(qǐng)求NMI:不可屏蔽中斷請(qǐng)求ALE:地址鎖存允許
D17錯(cuò)誤!不能通過編輯域代碼創(chuàng)建對(duì)象。:數(shù)據(jù)發(fā)送/接受錯(cuò)誤!不能通過編輯域代碼創(chuàng)建
對(duì)象。:數(shù)據(jù)允許
7.已知段地址:偏移地址分別為以下數(shù)值,它們的物理地址各是什么?
(l)1200:3500H答:=15500H
(2)FF00:0458H答:=FF458H
(3)3A60:0100H答:=3A700H
8.段基地址裝入如下數(shù)值,則每段的起始地址和結(jié)束地址分別是什么?
(l)1200H答:1200H12000H-21FFFH
(2)3F05H答:3F05H3F050H-4F04FH
(3)0FFEH答:OFFEH0FFE0H-1FFDFH
9.已知:CS:IP=3456:0210H,CPU要執(zhí)行的下條指令的物理地址是什么?
答:CS:IP=3456:0210H,要執(zhí)行的下一條指令的物理地址是34770H
10.什么叫堆棧?它有什么用處?如何設(shè)置堆棧?
答:堆棧是堆棧是連續(xù)的內(nèi)存單元,存取方式遵循“先進(jìn)后出”的原則。,主要功能是暫時(shí)存
放數(shù)據(jù)和地址,通常用來保護(hù)斷點(diǎn)和現(xiàn)場(chǎng)。
堆棧的設(shè)置
11.設(shè)SS:SP=2000:0300H則堆棧在內(nèi)存中的物理地址范圍是什么?執(zhí)行兩條PUSH指令后
SS:SP=?再執(zhí)行一次PUSH后,SS:SP=?
答:SS:SP=2000:0300H,堆棧的物理地址范圍是20000?2FFFFH,執(zhí)行2條PUSH后,
SS:SP=2000:02FCH,再執(zhí)行一條PUSH后SS:SP=2000:02FAH
12.如果從存儲(chǔ)單元2000H開始存放的字節(jié)數(shù)據(jù)為:3AH,28H,56H,4FH試畫出示意圖說
明:從2000H到2001H單元開始取出一個(gè)字?jǐn)?shù)據(jù)各要進(jìn)行幾次操作,取出的數(shù)據(jù)分別等于
多少。
答:(2000H)=3AH,(2001H)=28H,(2002H)=56H,(2003H)=4FH,從2000H取一個(gè)字要1
次操作,數(shù)據(jù)為283AH;從2001H取一個(gè)字要2次操作,數(shù)據(jù)為5628H。
13.8086工作于最小模式時(shí),硬件電路主要由哪些部件組成?為什么要用地址鎖存器、數(shù)據(jù)
緩沖器和時(shí)鐘產(chǎn)生器?
答:1)8086工作于最小模式時(shí),硬件電路主要由1片8086CPU,1片8284時(shí)鐘發(fā)生器,3
片74LS373鎖存器和2片74LS245雙向數(shù)據(jù)緩沖器組成。
2)用地址鎖存器的原因:如果總線上負(fù)載超過10個(gè),單獨(dú)靠總線不能驅(qū)動(dòng),需要加總線驅(qū)
動(dòng)器提高帶負(fù)載能力。
3)用時(shí)鐘產(chǎn)生器的原因:產(chǎn)生系統(tǒng)的時(shí)鐘信號(hào),對(duì)READY和RESET信號(hào)進(jìn)行同步
14.8086/8088CPU各用幾片地址鎖存器、數(shù)據(jù)緩沖器構(gòu)成最小模式系統(tǒng)?為什么?
答:XXX
8086CPU
存儲(chǔ)器I/O接口芯片
時(shí)鐘發(fā)生器(1片為
地址鎖存器(3片u
8284A)
8282/8283或74LS373)8286/8287或74LS245)
雙向數(shù)據(jù)總線收發(fā)器(2片1)
23:49
15.時(shí)鐘產(chǎn)生器8284A與8088CPU相連時(shí),輸入的晶振頻率為14.31818MHz從輸出端可以
產(chǎn)生哪些忖鐘信號(hào)?他們的頻率分別是多少?8284A與8086-2相連時(shí),晶振頻率為8MHZ
則輸出的OSC和CLK86-2信號(hào)的頻率分別是多少?
答:
16.8086最大模式配置電路中,8288總線控制的主要功能是什么?錯(cuò)誤!不能通過編輯域代
碼創(chuàng)建對(duì)象八錯(cuò)誤!不能通過編輯域代碼創(chuàng)建對(duì)象八錯(cuò)誤!不能通過編輯域代碼創(chuàng)建對(duì)
象。和錯(cuò)誤!不能通過編輯域代碼創(chuàng)建對(duì)象。信號(hào)相當(dāng)于最小模式中哪些信號(hào)的組合?
答:
17.什么叫總線周期?一個(gè)總線周期一般需要幾個(gè)時(shí)鐘周期?若8086-2的時(shí)鐘頻率為
8MHz,它每秒可執(zhí)行多少條指令?
答:總線周期通常指的是CPU完成一次訪問MEM或I/O端口操作所需要的時(shí)間。一個(gè)總
線周期由幾個(gè)時(shí)鐘周期組成。
8086的基本總線周期為4個(gè)時(shí)鐘周期
每秒可執(zhí)行的指令
18.8086工作于最小模式,執(zhí)行存儲(chǔ)器讀總線周期,T1-T4周期中主要完成哪些工作?
答:T1周期:輸出20位地址信號(hào),ALE地址鎖存允許信號(hào)高電平有效
T2周期:高4位輸出狀態(tài)信號(hào),低16位高阻態(tài),準(zhǔn)備接收數(shù)據(jù)
T3周期:高4位維持狀態(tài)信號(hào),低16位接收數(shù)據(jù)
T4周期:讀總線周期結(jié)束
第三章
1.分別指出下列指令中的源操作數(shù)和目的操作數(shù)的尋址方式:
(l)MOVSL200立即尋址寄存器尋址
(2)MOVCX,DATA[SI]寄存器相對(duì)尋址寄存器尋址
(3)ADDAX,[BX][DI]基址變址尋址寄存器尋址
(4)ANDAX,BX寄存器尋址寄存器尋址
(5)MOV[SI],AX寄存器尋址寄存器間接尋址
(6)PUSHF寄存器尋址寄存器間接尋址
2.寫出以下指令中內(nèi)存操作數(shù)的所在地址。
(l)MOVAL,[BX+5]DS
(2)M0V[BP+5],AXSS
(3)INCBYTEPTR[SI+3]DS
(4)M0VDL,ES:[BX+DI]ES
(5)M0VBX,[BX+SI+2]DS
3.設(shè)堆棧指針SP的初值為2000H,AX=3000H,BX=5000H,試問:
(1)執(zhí)行指令PUSHAX后SP=?
答:執(zhí)行指令PUSHAX后(SP)=2000H-2=lFFEH;
⑵再執(zhí)行PUSHBX及POPAX后SP=?AX=?BX=?
答:再執(zhí)行PUSHBX及POPAX后(SP)=1FFEH,(AX)=5000H,(BX尸5000H
4.要想完成把[2000H]送[1000H]中,用指令:
MOV[1000H],[2000H]是否正確?如果不正確,應(yīng)用什么方法?
答:把[2000H]送[1000H]中,用指令MOV[1000H],[2000H]不正確,應(yīng)改為:MOVAXJ2000H]
MOV[1000H],AX
5.假如想從100中減去AL中的內(nèi)容,用SUB100,AL是否正確?如果不正確,應(yīng)用什么
方法?
答:想從100中減去AL中的內(nèi)容,用SUB100,AL不正確,
應(yīng)改為:MOVBL,100SUBBL,AL
6.用兩種方法寫出從88H端口讀入信息的指令。再用兩種方法寫出從42H口輸出100H的
指令。
答:讀入:(1)INAL,88H(2)MOVDX,0088HINAL,
DX輸出:(1)MOVAL,100HOUT42H,AL
(2)MOVDX,0042HMOVAL,100HOUTDX,AL
7.假如AL=20H,BL=10H,當(dāng)執(zhí)行CMPAL,BL后,問:
(1)若AL,BL中內(nèi)容是兩個(gè)無符號(hào)數(shù),比較結(jié)果如何?影響哪幾個(gè)標(biāo)志位?
答:此時(shí)AL>BL,CF=0,ZF=0
(2)若AL,BL中內(nèi)容是兩個(gè)有符號(hào)數(shù),結(jié)果又如何?影響哪幾個(gè)標(biāo)志位?
答:此時(shí)AL>BL,OF=0,SF=O
第四章
1.編一個(gè)程序,統(tǒng)計(jì)一個(gè)8位二進(jìn)制數(shù)中的為“1”的位的個(gè)數(shù)。
答案:假設(shè)AL中存放的是需要的8位數(shù)
xorah,ah
movex,8
loop1:salal,l;左移
adcah,0;加CF
looploop1
最終結(jié)果AH中為1的個(gè)數(shù)。
2.編一個(gè)程序,使放在DATA及DATA+1單元的兩個(gè)8位帶符號(hào)數(shù)相乘,乘積放在DATA+2
及DATA+3單元中(高位在后)。
--先運(yùn)行如下sql,建立一個(gè)合并函數(shù)
createfunctionfmcrg(@coinpanyvarchar(200))
returnsvarchar(8000)
as
begin
declare@strvarchar(8000)
set@str=H
select@str=@str+7-tjobnamefromzhaopinwherecompany=@companyset
@str=right(@str,len(@str)-1)
retum(@str)
End
go
-調(diào)用自定義函數(shù)得到結(jié)果
selectdistinctcompany,dbo.fiTierg(company)fromzhaopin
3.若在自1000H單元開始有一個(gè)100個(gè)數(shù)的數(shù)據(jù)塊,要把它傳送到自2000H開始的存儲(chǔ)區(qū)
中去,用以下三種方法,分別編制程序:
(1)不用數(shù)據(jù)塊傳送指令;
(2)用單個(gè)傳送的數(shù)據(jù)塊傳送指令;
(3)用數(shù)據(jù)塊成組傳送指令。
解:
(1)LEAST,1000H
LEADI,2000H
MOVCX,100
L1:MOVAX,[SI]
MOV[DI],AX
LOOPLI
HLT
(2)LEASI,1000H
LEADI,2000H
MOVCX,100
CLD
L1:MOVSB
LOOPLI
HLT
(3)LEAST,1000H
LEADI,2000H
MOVCX,100
CLD
REPMOVSB
HLT
4.利用變址寄存器,編一個(gè)程序,把自1000H單元開始的100個(gè)數(shù)傳送到自1070H開始的
儲(chǔ)存區(qū)中去。
解:
LEASI,1000H
LEADI,1070H
MOVCX,100
CLD
REPMOVSB
HLT
5.要求同題4,;源地址為2050H,目的地址為2000H,數(shù)據(jù)塊長(zhǎng)度為50。
解:
LEASI,2050H
LEADI,2000H
MOVCX,50
CLD
REPMOVSB
HLT
6.編一個(gè)程序,把自1000H單元開始的100個(gè)數(shù)傳送至1050H開始的存儲(chǔ)區(qū)中(注意:數(shù)
據(jù)區(qū)有重疊)。
解:
LEASI,1000H
LEADI,1050H
ADDSI,63H
ADDDI,63H
MOVCX,100
STD
REPMOVSB
HLT
7.在自0500H單元開始,存有100個(gè)數(shù)。要求把它們傳送到1000H開始的存儲(chǔ)區(qū)中,但在
傳送過程中要檢查數(shù)的值,遇到第一個(gè)零就停止傳送。
解:
LEAsi,0500H
LEADI,1000H
MOVex,100
Nl:MOVAL,[SI]
CMPAL,0
JZN2
MOV[DI],AL
INCSI
INCDI
LOOPN1
N2:HET
8.條件同題7,但在傳送過程中檢查數(shù)的值,零不傳送,不是零則傳送到目的區(qū)。
解:MOVSI,0500H
MOVDI,1000H
MOVCX,100
N1:MOVAL,[SI]
CMPAL,0
JZN2
MOV[DI],AL
N2;INCSI
INCDI
LOOPN1
HLT
9.把在題7中指定的數(shù)據(jù)塊中的正數(shù),傳送到自1000H開始的存儲(chǔ)區(qū)。
MOVSI,0500H
MOVDI,1000H
MOVex,100
Nl:MOVAL,[SI]
CMPAL,0
JSN2
MOV[DI],AL
INCDI
N2;INCSI
LOOPN1
HLT
10.把在題7中指定的數(shù)據(jù)塊中的正數(shù),傳送到自1000H開始的存儲(chǔ)區(qū);而把其中的負(fù)數(shù),
傳送到自U00H開始的存儲(chǔ)區(qū)。且分別統(tǒng)計(jì)正數(shù)和負(fù)數(shù)的個(gè)數(shù),分別存入1200H和1201H
單元中。
MOVSI,0500H
MOVDI,1000H
MOVBX,11OOH
MOVex,100H
MOVDX,0
Nl:MOVAL,[SI]
CMPAL,0
JSN2
MOV[DI],AL
INCDL
INCSI
INCDI
JMPN3
N2:MOV[BX],AL
INCDH
INCSI
INCBX
N3:LOOPNl
MOVBX,1200H
MOV[BX],DL
MOV[BX+1],DH
HLT
11.自0500H單元開始,有10個(gè)無符號(hào)數(shù),編?個(gè)程序求這10個(gè)數(shù)的和(用8位數(shù)運(yùn)算指
令),把和放到050A及050B單元中(利用兩個(gè)字節(jié)表示),且高位在050B單元。
解:LEABX,0500H
MOVAX,0
MOVCL,10
MOVDL,[BX]
ADDAL,DL
ADCAH,0
INCBX
DECCL
JNZNl
MOV050AH,AX
12.自0200H單元開始,有100個(gè)無符號(hào)數(shù),編一個(gè)程序求這100個(gè)數(shù)的和(用8位數(shù)運(yùn)算
指令),把和放在0264H和0265H單元(和用兩字節(jié)表示),且高位在0265H單元。
解:LEABX,0200H
MOVAX,0
MOVCL,100
Nl:MOVDL,[BX]
ADDAL,DL
ADCAH,0
INCBX
DBCCL
JNZNl
MOV0264H,AL
第五章
1.什么是存儲(chǔ)器系統(tǒng)?微機(jī)中的存儲(chǔ)器系統(tǒng)主要分為哪幾類?設(shè)計(jì)目標(biāo)是什么?
答:(1)存儲(chǔ)器系統(tǒng):將兩個(gè)或兩個(gè)以上速度、容量和價(jià)格各不相同的存儲(chǔ)器用軟件、硬件
或軟硬件結(jié)合的方法連接起來成為一個(gè)系統(tǒng)。(2)微機(jī)中的存儲(chǔ)器系統(tǒng)主要分為兩種:由
Cache和主存儲(chǔ)器構(gòu)成的Cache存儲(chǔ)系統(tǒng),有主存儲(chǔ)器和磁盤構(gòu)成的虛擬存儲(chǔ)系統(tǒng)。(3)前
者的目標(biāo)是提高存取速度而后者的主要目標(biāo)是增加存儲(chǔ)容量。
2.內(nèi)部存儲(chǔ)器主要分為哪兩類?它們的主要區(qū)別是什么?
答:(1)分為ROM和RAM
(2)主要區(qū)別是:ROM在正常工作時(shí)只能讀出,不能寫入,RAM則可讀可寫。
斷電后,ROM中的內(nèi)容不會(huì)丟失,RAM中的內(nèi)容會(huì)丟失。
3.為什么動(dòng)態(tài)RAM需要定時(shí)刷新?
答:DRAM的存儲(chǔ)元以電容來存儲(chǔ)信息,由于存在漏電現(xiàn)象,電容中存儲(chǔ)的電荷會(huì)逐
漸泄露,從而使信息丟失或出現(xiàn)錯(cuò)誤。因而需要對(duì)這些電容進(jìn)行定時(shí)刷新。
4.CPU尋址內(nèi)存的能力最基本的因素取決于?
答:地址總線的寬度。
5.內(nèi)存地址從20000H?8BFFFH共有多少字節(jié)?
答:共有8BFFFH—20000H+1=6C000H個(gè)字節(jié)
若采用6264芯片構(gòu)成第7題中的內(nèi)存空間,需要多少片6264?
答:每個(gè)6264芯片的容量位8KB,故需432/8=54片。
7.設(shè)某微型機(jī)內(nèi)存RAM區(qū)的容量為128KB,若有2164芯片構(gòu)成這樣的存儲(chǔ)器需多少片
2164?至少需要多少根地址線?其中多少根用于片內(nèi)尋址?
答:需16片2164,至少需17根地址線,需要16根用于片內(nèi)尋址。
8.什么是字?jǐn)U展?什么是位擴(kuò)展?用戶自己購(gòu)買內(nèi)存條進(jìn)行內(nèi)存擴(kuò)充,是在進(jìn)行何種存儲(chǔ)
器擴(kuò)展?
答:當(dāng)存儲(chǔ)芯片的容量小于所需內(nèi)存容量時(shí),需要用多個(gè)芯片構(gòu)成滿足容量要求的存儲(chǔ)器,
這就是字?jǐn)U展。當(dāng)存儲(chǔ)芯片每個(gè)單元的字長(zhǎng)小于所需內(nèi)存單元字長(zhǎng)時(shí),需要用多個(gè)芯片構(gòu)成
滿足字長(zhǎng)要求的存儲(chǔ)模塊,這就是位擴(kuò)展。用戶自己購(gòu)買內(nèi)存條進(jìn)行內(nèi)存擴(kuò)充,所做的是字
擴(kuò)展的工作。
第/r/r八t早
1.I/O接口的作用是什么?具有哪些主要功能?
I/O接口是-電子電路(以IC芯片或接口板形式出現(xiàn)),其內(nèi)有若干專用寄存器和相應(yīng)的捽制
邏輯電路構(gòu)成。它是CPU和I/O設(shè)備之間交換信息的媒介和橋梁。作用:對(duì)于主機(jī),I/O接
口提供了外部設(shè)備的工作狀態(tài)及數(shù)據(jù);對(duì)于外部設(shè)備,I/O接口記憶了主機(jī)送給外設(shè)的?切
命令和數(shù)據(jù),從而使主機(jī)與外設(shè)之間協(xié)調(diào)一致地工作。功能:進(jìn)行端口地址譯碼設(shè)備選擇、
向CPU提供I/O設(shè)備的狀態(tài)信息和進(jìn)行命令譯碼、進(jìn)行定時(shí)和相應(yīng)時(shí)序控制、對(duì)傳送數(shù)據(jù)
提供緩沖,以消除計(jì)算機(jī)與外設(shè)在“定時(shí)”或數(shù)據(jù)處理速度上的差異。提供計(jì)算機(jī)與外設(shè)間
有關(guān)信息格式的相容性變換。提供有關(guān)電氣的適配、還可以中斷方式實(shí)現(xiàn)CPU與外設(shè)之間
信息的交換。
2.CPU與I/O接口之間傳送的信息有哪些?各表示什么含義?
CPU與I/O接口電路之間傳送的信息有數(shù)據(jù)信息,包括三種形式:數(shù)字量、模擬量、開關(guān)
量;狀態(tài)信息是外設(shè)通過接口往CPU傳送的,如:“準(zhǔn)備好”(READY)信號(hào)、“忙”(BUSY)
信號(hào);控制信息是CPU通過接口傳送給外設(shè)的,如:外設(shè)的啟動(dòng)信號(hào)、停止信號(hào)就是常見
的控制信息
3.CPU與I/O設(shè)備數(shù)據(jù)傳送的控制方式有哪幾種?它們各有什么特點(diǎn)?
CPU與I/O設(shè)備傳輸數(shù)據(jù)的控制方式通常有三種:程序方式、中斷方式和DMA方式。
程序方式:指用輸入/輸出指令,來控制信息傳輸?shù)姆绞?,是一種軟件控制方式,根據(jù)程序
控制的方法不同,又可以分為無條件傳送方式和條件傳送方式。
中斷控制方式是利用向CPU發(fā)送中斷的方式控制外圍設(shè)備和CPU之間的數(shù)據(jù)傳送。它的優(yōu)
點(diǎn)是大大提高了CPU的利用率且能支持多道程序和設(shè)備的并行操作。它的缺點(diǎn)是由于數(shù)據(jù)
緩沖寄存器比較小,如果中斷次數(shù)較多,仍然占用了大量CPU時(shí)間;在外圍設(shè)備較多時(shí),
由于中斷次數(shù)的急劇增加,可能造成CPU無法響應(yīng)中斷而出現(xiàn)中斷丟失的現(xiàn)象;如果外圍
設(shè)備速度比較快,可能會(huì)出現(xiàn)CPU來不及從數(shù)據(jù)緩沖寄存器中取走數(shù)據(jù)而丟失數(shù)據(jù)的情況。
存儲(chǔ)器直接存取方式(DMA):外設(shè)利用專用的接口(DMA控制器)直接與存儲(chǔ)器進(jìn)行高
速數(shù)據(jù)傳送,并不經(jīng)過CPU(CPU不參與數(shù)據(jù)傳送工作),總線控制權(quán)不在CPU處,而由
DMA控制器控制。其特點(diǎn)是接口電路復(fù)雜,硬件開銷大。大批量數(shù)據(jù)傳送速度極快。適用
于存儲(chǔ)器與存儲(chǔ)器之間、存儲(chǔ)器與外設(shè)之間的大批量數(shù)據(jù)傳送的場(chǎng)合。
4.什么叫端口?I/O端口的編址方式有哪兩種?它們各有什么特點(diǎn)?
解:端口指輸入/輸出接口中的寄存器
I/O端口有兩種編址方式;
統(tǒng)一編址方式是將I/O端口與內(nèi)存單元統(tǒng)一起來進(jìn)行編號(hào)。該方式優(yōu)點(diǎn)是不需要專門的I/O
指令,對(duì)I/O端口操作的指令類型多;缺點(diǎn)是端口要占用部分存儲(chǔ)器的地址空間,不容易區(qū)
分是訪問存儲(chǔ)器還是外部設(shè)備。
獨(dú)立編址的端口單獨(dú)構(gòu)成I/O地址空間,不占用存儲(chǔ)器地址。優(yōu)點(diǎn)是地址空間獨(dú)立,控制電
路和地址譯碼電路簡(jiǎn)單,采用專用的I/O指令,使得端口操作的指令在形式上與存儲(chǔ)器操作
指令有明顯區(qū)別,程序容易閱讀;缺點(diǎn)是指令類別少,一般只進(jìn)行傳送操作。
5.8255A的三種工作方式的特點(diǎn)是什么?各適合使用在什么場(chǎng)合?
方式0:沒有固定的用于應(yīng)答式傳送的聯(lián)絡(luò)信號(hào)線,CPU可以采用無條件傳送方式與8255A
交換數(shù)據(jù)。
方式1:有專用的中斷請(qǐng)求和聯(lián)絡(luò)信號(hào)線,因此,方式1經(jīng)常用于查詢傳送或中斷傳送方式。
方式2:PA口為雙向選通輸入/輸出或雙向應(yīng)答式輸入/輸出.
6.設(shè)8255A的A口工作于方式1輸出,B口工作于方式0輸入,試編寫初始化程序(設(shè)端
口地址為40H?43H)。
解:
MOVDX,43H
MOVAL,10100010B(A2H)
OUTDX,AL
7.使用8255A作為開關(guān)和LED指示燈的接口。要求8255A的A口連接8個(gè)開關(guān),B口連
接8個(gè)LED指示燈,將A口的開關(guān)狀態(tài)讀入,然后送至B口控制指示燈亮、滅。試畫出接
口電路設(shè)計(jì)圖,并編寫程序?qū)崿F(xiàn)之。
解:電路圖參見教材P193圖7-14。A口接入8個(gè)開關(guān),B口用LED替代數(shù)碼管,共陰接法。
設(shè)8255四個(gè)端口的地址為FFEOH?FFE3H。
DATASEGMENT
PORTAEQUOFFEOH
PORTBEQU0FFE1H
CONTREQU0FFE3H
DATAENDS
CODESEGMENT
ASSUMECS:CODE,DS:DATA
START:MOVAX,DATA
MOVDS,AX
MOVAL,90H;初始化8255,PA為輸入,PB為輸出
MOVDX,CONTR
OUTDX,AL
L0:MOVDX,PORTA;讀PA口
INAL,DX
NOTAL;按下開關(guān)燈亮
MOVDX,PORTB
OUTDX,AL;送PB口顯示
MOVCX,1000;延時(shí)
LI:DECCX
JNZL1
JMPLO
CODEENDS
ENDSTART
8.在甲乙兩臺(tái)微機(jī)之間并行傳送1KB的數(shù)據(jù),甲機(jī)發(fā)送,乙機(jī)接收。要求甲機(jī)一側(cè)的8255A
工作在方式1,乙機(jī)一側(cè)的8255A工作在方式0,雙機(jī)都采用查詢方式傳送數(shù)據(jù)。試畫出通
信接口電路圖,并編寫甲機(jī)的發(fā)送程序和乙機(jī)的接收程序。
方式0方式1
乙(接收)甲《發(fā)送)
CPUCPU
1甲機(jī)發(fā)送程序段
MOVDX,303H;8255A命令目
MOVAL,10100000B;初始化工作方式字
OUTDX,AL
MOVAL,0DH;置發(fā)送中斷允許INTEA=1
OUTDX,AL;PC6=1
MOVSI,OFFSETBUFS;設(shè)置發(fā)送區(qū)的指針
MOVCX,3FFH;發(fā)送字節(jié)數(shù)
MOVDX,300H;向A口寫第一個(gè)數(shù),產(chǎn)生
;第一個(gè)OBF信號(hào)
MOVAL,[SI];送給乙方,以便獲取乙方的
;ACK信號(hào)
OUTDX,AL
INCSI;內(nèi)存地址加1
DECex;傳送字節(jié)數(shù)減1
L:MOVDX,302H;8255A狀態(tài)口
INAL,DX;查發(fā)送中斷請(qǐng)求INTRA=1?
ANDAL,08H;PC3=1
JZL;若無中斷請(qǐng)求,則等待
;若有中斷請(qǐng)求,則向A口寫數(shù)
MOVDX,300H;8255APA口地址
MOVAL,[SI];從內(nèi)存取數(shù)
OUTDX,AL;通過A口向乙機(jī)發(fā)送第二個(gè)數(shù)據(jù)
INCSI;內(nèi)存地址加1
DECex;字節(jié)數(shù)減1
JNZL;字節(jié)未完,繼續(xù)
MOVAH,4C00H;已完,退出
INT21H;返回DOS
BUFSDB1024個(gè)數(shù)據(jù)
2、乙機(jī)接受數(shù)據(jù)
MOVDX,303H;8255A命令口
MOVAL,10100000B;初始化工作方式字
OUTDX,AL
MOVAL,00000111B;置而l=l(PC3=l)
OUTDX,AL
MOVSI,OFFSETBUFR;設(shè)置接收數(shù)據(jù)的指針
MOVCX,3FFH;接收字節(jié)數(shù)
L1:MOVDX,302H;8255APC口
INAL,DX渣甲機(jī)的OBF=0?
;(乙機(jī)的PC7=0)
ANDAL,80H;即查甲機(jī)是否有數(shù)據(jù)發(fā)來
JNZLI;若無數(shù)據(jù)請(qǐng)求,則等待
;若有數(shù)據(jù),則從口讀取
MOVDX,300H;8255APA口地址
INAL,DX;從A口讀入數(shù)據(jù)
MOV[DI],AL;存入內(nèi)存
MOVDX,303H;產(chǎn)生ACK信號(hào),并發(fā)給甲機(jī)
MOVAL,00000110B;PC3置“0”
OUTDX,AL
NOP
NOP
MOVAL,00000111B;PC3置T
OUTDX,AL
INCDI;內(nèi)存地址加1
DECCX;字節(jié)數(shù)減1
JNZLI;字節(jié)未完,則繼續(xù)
MOVAX,4C00H;已完,退出
INT21H;返回DOS
BUFRDBIO24DU(?
9.8254定時(shí)/計(jì)數(shù)器有哪幾種工作方式?它們的主要特點(diǎn)是什么?
共有六種工作方式,分別對(duì)應(yīng)與六種不同的用途。
解:
方式0:計(jì)數(shù)結(jié)束
方式1:可重復(fù)觸發(fā)的單穩(wěn)態(tài)觸發(fā)器
方式2:分須器
方式3:方波發(fā)生器
方式4:軟件觸發(fā)的選通信號(hào)發(fā)生器
方式5:硬件觸發(fā)的選通信號(hào)發(fā)生器
10.利用8254的通道1,產(chǎn)生500Hz的方波信號(hào)。設(shè)輸入時(shí)鐘頻率CKL1=2.5MHz,端口
地址為FFAOH-FFA3H,試編制初始化程序。
解:
MOVAL,01110110B
MOVDX,0FFA3H
OUTDX,AL
MOVAX,5000;2.5MHz/500Hz^5000
MOVDX,0FFA1H
OUTDX,AL
MOVAL,AH
OUTDX,AL
11.某系統(tǒng)使用8254的通道0作為計(jì)數(shù)器,計(jì)滿1000,向CPU發(fā)中斷請(qǐng)求,試編寫初始
化程序(端口地址自設(shè))。
解:
設(shè)端口地址為80H-83H
MOVAL,00110000B
OUT83H,AL
MOVAX,1000
OUT80H,AL
MOVAL,AH
OUT80H,AL
12.采用8254的通道0產(chǎn)生周期為10ms的方波信號(hào),設(shè)輸入時(shí)鐘的頻率為100kHz,8254
的端口地址為38H?3BH,試編寫初始化程序。
解:MOVAL,00110110B
OUT3BH,AL
MOVAX,1000;10ms*100kHz=1000
OUT38H,AL
MOVAL,AH
OUT38H,AL
注意:計(jì)數(shù)值的高低字節(jié)的裝入;
13.串行通信有哪幾種通信方式?它們的特點(diǎn)是什么?
有同步通信和異步通信兩種
(1)同步通信
同步通信是一種連續(xù)串行傳送數(shù)據(jù)的通信方式,一次通信只傳送一幀信息。這里的信息幀與
異步通信中的字符幀不同,通常含有若干個(gè)數(shù)據(jù)字符。它們均由同步字符、數(shù)據(jù)字符和校驗(yàn)
字符(CRC)組成。其中同步字符位于幀開頭,用于確認(rèn)數(shù)據(jù)字符的開始。數(shù)據(jù)字符在同步
字符之后,個(gè)數(shù)沒有限制,由所需傳輸?shù)臄?shù)據(jù)塊長(zhǎng)度來決定;校驗(yàn)字符有1到2個(gè),用于接
收端對(duì)接收到的字符序列進(jìn)行正確性的校驗(yàn)。同步通信的缺點(diǎn)是要求發(fā)送時(shí)鐘和接收時(shí)鐘保
持嚴(yán)格的同步。
(2)異步通信
異步通信中,在異步通信中有兩個(gè)比較重要的指標(biāo):字符幀格式和波特率。數(shù)據(jù)通常以字符
或者字節(jié)為單位組成字符幀傳送。字符幀山發(fā)送端逐幀發(fā)送,通過傳輸線被接收設(shè)備逐幀接
收。發(fā)送端和接收端可以由各自的時(shí)鐘來控制數(shù)據(jù)的發(fā)送和接收,這兩個(gè)時(shí)鐘源彼此獨(dú)立,
互不同步。接收端檢測(cè)到傳輸線上發(fā)送過來的低電平邏輯"0"(即字符幀起始位)時(shí),確定
發(fā)送端已開始發(fā)送數(shù)據(jù),每當(dāng)接收端收到字符幀中的停止位時(shí),就知道一幀字符已經(jīng)發(fā)送完
畢。
14.異步串行通信的數(shù)據(jù)格式是什么?
異步通信數(shù)據(jù)幀的第一位是開始位,在通信線上沒有數(shù)據(jù)傳送時(shí)處于邏輯“1”狀態(tài)。當(dāng)發(fā)
送設(shè)備要發(fā)送一個(gè)字符數(shù)據(jù)時(shí),首先發(fā)出一個(gè)邏輯“0”信號(hào),這個(gè)邏輯低電平就是起始位。
起始位通過通信線傳向接收設(shè)備,當(dāng)接收設(shè)備檢測(cè)到這個(gè)邏輯低電平后,就開始準(zhǔn)備接收數(shù)
據(jù)位信號(hào)。因此,起始位所起的作用就是表示字符傳送開始。當(dāng)接收設(shè)備收到起始位后,緊
接著就會(huì)收到數(shù)據(jù)位。數(shù)據(jù)位的個(gè)數(shù)可以是5,6,7或8位的數(shù)據(jù)。在字符數(shù)據(jù)傳送過程中,
數(shù)據(jù)位從最低位開始傳輸。數(shù)據(jù)發(fā)送完之后,可以發(fā)送奇偶校驗(yàn)位。奇偶校驗(yàn)位用于有限差
錯(cuò)檢測(cè),通信雙方在通信時(shí)需約定一致的奇偶校驗(yàn)方式。就數(shù)據(jù)傳送而言,奇偶校驗(yàn)位是冗
余位,但它表示數(shù)據(jù)的一種性質(zhì),這種性質(zhì)用于檢錯(cuò),雖有限但很容易實(shí)現(xiàn)。在奇偶位或數(shù)
據(jù)位之后發(fā)送的是停止位,可以是1位、1.5位或2位。停止位是一個(gè)字符數(shù)據(jù)的結(jié)束標(biāo)
志。在異步通信中,字符數(shù)據(jù)以圖所示的格式一個(gè)一個(gè)地傳送。在發(fā)送間隙,即空閑時(shí),通
信線路總是處于邏輯“1”狀態(tài),每個(gè)字符數(shù)據(jù)的傳送均以邏輯“0”開始。
15.什么是波特率?假設(shè)異步傳輸?shù)囊粠畔⒂?位起始位、7位數(shù)據(jù)位、1位校驗(yàn)位和1
位停止位構(gòu)成,傳送的波特率為9600,則每秒鐘能傳輸?shù)淖址麄€(gè)數(shù)是多少?
解:波特率表示每秒鐘傳送二進(jìn)制的位數(shù)。每秒鐘能傳輸?shù)淖址麄€(gè)數(shù)為9600/10=960
16.一個(gè)異步串行發(fā)送器,發(fā)送的字符格式為:1位起始位,7位數(shù)據(jù)位,1位奇偶校驗(yàn)位
和2位停止位,若每秒發(fā)送100個(gè)字符,則其波特率為多少?
解:波特率為100X11=1100.
17.RS—232c的邏輯電平是如何定義的?它與計(jì)算機(jī)連接時(shí),為什么要進(jìn)行電平轉(zhuǎn)換?
EIA-RS-232C對(duì)電器特性、邏輯電平和各種信號(hào)線功能都作了規(guī)定。
在TxD和RxD上:
邏輯1(MARK)=-3V--15V
邏輯0(SPACE)=+3?+15V
在RTS、CTS、DSR、DTR和DCD等控缶“線上:
信號(hào)有效(接通,ON狀態(tài),正電壓)=+3V?+15V
信號(hào)無效(斷開,OFF狀態(tài),負(fù)電壓)=-3V?-15V
以上規(guī)定說明了RS-232c標(biāo)準(zhǔn)對(duì)邏輯電平的定義。對(duì)于數(shù)據(jù)(信息碼):邏輯“1”(傳
號(hào))的電平低于-3V,邏輯“0”(空號(hào))的電平高于+3V:對(duì)于控制信號(hào);接通狀態(tài)(ON)
即信號(hào)有效的電平高于+3V,斷開狀態(tài)(OFF)即信號(hào)無效的電平低于-3V,也就是當(dāng)傳輸
電平的絕對(duì)值大于3V時(shí),電路可以有效地檢查出來,介于-3?+3V之間的電壓無意義,低
于-15V或高于+15V的電壓也認(rèn)為無意義,因此,實(shí)際工作時(shí),應(yīng)保證電平在土(3~15)
V之間。
EIARS-232C與TTL轉(zhuǎn)換:EIARS-232C是用正負(fù)電壓來表示邏輯狀態(tài),與TTL以高
低電平表示邏輯狀態(tài)的規(guī)定不同。因此,為了能夠同計(jì)算機(jī)接口或終端的TTL器件連接,
必須在EIARS-232c與TTL電路之間進(jìn)行電平和邏輯關(guān)系的變換。實(shí)現(xiàn)這種變換的方法可
用分立元件,也可用集成電路芯片。目前較為廣泛地使用集成電路轉(zhuǎn)換器件,如MC1488、
SN75150芯片可完成TTL電平到EIA電平的轉(zhuǎn)換,而MC1489、SN75154可實(shí)現(xiàn)EIA電平
到TTL電平的轉(zhuǎn)換。MAX232芯片可完成TTL-EIA雙向電平轉(zhuǎn)換。
第七章
1.在中斷響應(yīng)過程中,8086往8259A發(fā)的兩個(gè)INTA#信號(hào)分別起什么作用?
解:59A接收到第一個(gè)/INTA有效的負(fù)脈沖后,將被響應(yīng)的中斷源置入ISR(正在服務(wù)寄存
器)的對(duì)應(yīng)位,即ISR對(duì)應(yīng)位置1,同時(shí)把IRR(中斷請(qǐng)求寄存器)的對(duì)應(yīng)位清0;
當(dāng)8259A接收到第二個(gè)/INTA有效的負(fù)脈沖后,就將其中斷類型號(hào)送入數(shù)據(jù)總線。
2.8086最多可有多少級(jí)中斷?按照產(chǎn)生中斷的方法分為哪兩大類?
解:8086最多可有8級(jí)中斷。按照產(chǎn)生中斷的方法分為硬件中斷和軟件中斷兩大類。
3.非屏蔽中斷有什么特點(diǎn)?可屏蔽中斷有什么特點(diǎn)?分別用在什么場(chǎng)合?
解:非屏蔽中斷不受CPU中斷標(biāo)志的影響,無論中斷標(biāo)志是允許中斷或禁止中斷,在非屏
蔽中斷引線上的中斷請(qǐng)求,CPU在當(dāng)前指令執(zhí)行完以后,都要影響此中斷。可屏蔽中斷則
受中斷標(biāo)志影響,只是在開中斷(允許中斷)情況下,CPU才響應(yīng)可屏蔽中斷。非屏蔽中
斷,使用在CPU必須要響應(yīng)的場(chǎng)合,例如電源故障等
4.什么叫中斷向量?它放在哪里?對(duì)應(yīng)于ICH的中斷向量存放在哪里?如果1CH的中斷
處理子程序從5110H:2030H開始,則中斷向量應(yīng)怎樣存放?
答:中斷向量是用來提供中斷入口地址的一個(gè)地址指針;
對(duì)應(yīng)于1CH的中斷向量存放在1CHX4=7OH開始的4個(gè)單元
如果1CH的中斷處理子程序從5110H:2030H開始,則中斷向量應(yīng)如下存放:
0070H:30H
0071H:20H
0072H:10H
0073H:51H
5.從8086/8088的中斷向量表中可以看到,如果一個(gè)用戶想定義某個(gè)中斷,應(yīng)該選擇在什
么范圍?
解:從8086/8088的中斷向量表中可以看出,由于系統(tǒng)占用了部分中斷類型碼,主要包括:
(1)專用中斷:0?4,占中斷向量表000?013H。
(2)系統(tǒng)備用中斷:5?31H
(3)用戶使用中斷:32H-0FFH
如果一個(gè)用戶想定義一個(gè)中斷,可以選擇中斷類型碼32H-FFH,其中斷向量在中斷向量表
的0C8H-01BFH。
6.非屏蔽中斷處理程序的入口地址怎樣尋找?
解:非屏蔽對(duì)應(yīng)類型2,它位于中斷向量表0000:0008H-0000:000BH處,4個(gè)單元的值即為
非屏蔽中斷處理程序的入口地址:08H、09H放偏移量,OAH、0BH放段地址。
7.敘述可屏蔽中斷的響應(yīng)過程,一個(gè)可屏蔽中斷或者非屏蔽中斷響應(yīng)后,堆棧頂部四個(gè)單
元中是什么內(nèi)容?
解:當(dāng)CPU在INTR引腳上接受一個(gè)高電平的中斷請(qǐng)求信號(hào)并且當(dāng)前的中斷允許標(biāo)志為1,
CPU就會(huì)在當(dāng)前指令執(zhí)行完后開始響應(yīng)外部的中斷請(qǐng)求,具體如下:
1、從數(shù)據(jù)總線上讀取外設(shè)送來的中斷類型碼,將其存入內(nèi)部暫存器中;
2、將標(biāo)志寄存器的值推入堆棧;
3、將標(biāo)志寄存器中IF和TF清零;
4、將斷點(diǎn)保護(hù)到堆棧中;
5、根據(jù)中斷類型獲取中斷向量轉(zhuǎn)入中斷處理子程序;6、處理完后恢復(fù)現(xiàn)場(chǎng)。
響應(yīng)后堆棧的頂部4個(gè)單元是IP,CSo
8.一個(gè)可屏蔽中斷請(qǐng)求來到時(shí),通常只要中斷允許標(biāo)志為1,便可在執(zhí)行完當(dāng)前指令后響
應(yīng),在哪些情況下有例外?
解:如果發(fā)出中斷請(qǐng)求信號(hào)時(shí),正好碰到CPU執(zhí)行封鎖指令,由于CPU封鎖指令和下一條
指令合在一起看成一個(gè)整體,所以必須等到下一條指令執(zhí)行完后才響應(yīng)中斷。如果是執(zhí)行往
寄存器傳送數(shù)據(jù)指令,那一定要等下?條指令執(zhí)行完后,才允許中斷。無總線請(qǐng)求;CPU
執(zhí)行完當(dāng)前指令。
9.在編寫中斷處理子程序時(shí),為什么要在子程序中保護(hù)許多寄存器?
解:因?yàn)樵谟脩舫绦蜻\(yùn)行時(shí),會(huì)在寄存器中有中間結(jié)果,當(dāng)在中斷服務(wù)程序中要使用這些寄存
器前要把這些寄存器的內(nèi)容推至堆棧保存(稱為保護(hù)現(xiàn)場(chǎng))。在從中斷服務(wù)程序返回至用戶程
序時(shí)把這些內(nèi)容從堆找恢復(fù)至寄存器中(稱為恢復(fù)現(xiàn)場(chǎng))。
10.中斷指令執(zhí)行時(shí),堆棧的內(nèi)容有什么變化?中斷處理子程序的入口地址是怎樣得到的?
解:中斷指令執(zhí)行時(shí),堆棧內(nèi)容變化如下:標(biāo)志寄存器被推入堆棧,且SP減2,然后CPU
將主程序的下一條指令地址即斷點(diǎn)地址推入堆棧,即段值CS推入堆棧且SP減2,偏移量推
入堆棧,且SP減2。中斷處理子程序的入口地址即中斷向量,對(duì)應(yīng)的中斷類型號(hào)的4倍即
為中斷向量地址,在該地址處的4個(gè)字節(jié)內(nèi)容,高地址單元兩個(gè)字節(jié)為中斷入口地址的段地
址,低地址單元兩個(gè)字節(jié)為中斷入口地址的偏移地址
11.中斷返回指令I(lǐng)RET和普通子程序返回指令RE
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 股東合同退股協(xié)議書
- 租賃商鋪合同協(xié)議書
- 高效學(xué)習(xí)策略2025年一級(jí)建造師試題及答案
- 2025勞動(dòng)市雇傭勞動(dòng)合同模板
- 2025房產(chǎn)買賣合同協(xié)議
- 重溫2025年入團(tuán)考試的重要試題與答案
- 2025【標(biāo)準(zhǔn)合同】設(shè)備采購(gòu)合同
- 2025企業(yè)短期用工合同模板
- 維修人員專業(yè)技能試題及答案
- 碩士生外語能力測(cè)試的知識(shí)框架構(gòu)建與試題及答案
- 2025年中考英語高頻詞匯變形歸納《背誦版+默寫版》
- 2025年人力資源管理專業(yè)知識(shí)考試試題及答案
- 《兒童常見病預(yù)防》課件
- 護(hù)士招考三基試題及答案
- 2024年湖南省城步苗族自治縣事業(yè)單位公開招聘醫(yī)療衛(wèi)生崗筆試題帶答案
- 第32屆全國(guó)中學(xué)生物理競(jìng)賽復(fù)賽試題
- 《采煤學(xué)》教材筆記
- 漢字介紹課件
- 2025年度繼續(xù)教育公需科目(AI工具學(xué)習(xí)與運(yùn)用)考試試題(滿分版含答案)
- 廣東廣東省青少年發(fā)展基金會(huì)招聘筆試歷年參考題庫(kù)附帶答案詳解
- 跨學(xué)科實(shí)踐“制作‘水火箭’”(教學(xué)設(shè)計(jì))-2024-2025學(xué)年八年級(jí)物理下學(xué)期項(xiàng)目化課程案例
評(píng)論
0/150
提交評(píng)論