微型计算机原理应用第四版_第1页
微型计算机原理应用第四版_第2页
微型计算机原理应用第四版_第3页
微型计算机原理应用第四版_第4页
微型计算机原理应用第四版_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

微型计算机原理应用第四版答案第1章习题1.1将以下二进制数变换为十进制数和十六进制。1)1101(2)=13=D(H)2)11010(2)=26=1A(H)3)110100(2)=52=34(H)4)10101001(2)=169=A9(H)重点:从低位起,按每4位将对应二进制变换成十六进制。而不是经过十进制转换。1.2见上。1.3简述3个门电路的基本元素在电路中对电平高低的作用。答:与、或、非。1.4布尔代数有哪两个特色?答:(1)值只有两个;(2)只有与、或、反3种运算。1.5布尔代数的“或运算”结果可用哪两句话来概括?其“与运算”又可归纳成哪两句话“答:(1)“或运算”运算结果为有一真必为真,二者皆假才为假。b5E2RGbCAP(2)“与运算”有一假即为假,二者皆真才为真。1.6什么叫原码、反码及补码?答:原码就是一个数的机器数。1/27反码:将原码每位取反,即为反码。更正确的是:正数的反码就等于它的原码;负数的反码就是它的原码除符号位外,各位取反。补码:反码加1就是补码。更正确的是:正数的补码就等于它的原码;负数的补码就是它的反码加1。例:X1=+1001001X2=-1001001则:[X1]原=01001001[X1]反=01001001[X1]补=01001001[X2]原=11001001[X2]反=10110110[X2]补=[X2]反+1=101101111.7为何需要半加器和全加器,它们之间的主要差别是什么?答:(1)因为加法的第一位没有进位,因此用半加器即可;而第二位起可能有进位,故需要考虑全加器;2)二者的差别是半加器为双入双出,全加器为三入双出。1.8用补码法写出以下减法的步骤:1)1111(2)-1010(2)=?(2)=?(10)答:2)1100(2)-0011(2)=?(2)=?(2)2/27答:按上述所讲的正规方法做。第一个数的补码=原码=01100;第二个数的原码(即机器码)为10011,其反码为11100,其补码为11101;p1EanqFDPw两个数的补码相加,即为:0110011101101001将最高位的进位1删去,得结果为01001,即为9(10)1.9做出101011(2)+011110(2)的门电路图并求其相加的结果。答:相加结果为:101011011110=1001001得结果为1001001(2)。(注:相加时不去掉最高位的进位)门电路图略去。1.10做出第1.9题中两数相减的门电路图并求其相减的结果。答:若为101011-011110则第一个数为正数,其补码=原码=0101011;第二个数为负数,其原码为1011110,反码为1100001,补码=反码+1=1100001+1=1100010两个数的补码相加为:0101011DXDiTa9E3d1100010=10001101去掉最高位的进位1,得结果为0001101,即为13(10)。3/27例2:[+0]反=00000000[-0]反=11111111即:数0的反码也不是独一的。第2章习题2.2触发器、寄存器及储存器之间有什么关系?请画出这几种器件的符号。答:触发器是寄存一位二进制数字信号的基本单元。触发器是计算机的记忆装置的基本单元,也能够说是记忆细胞。触发器能够构成寄存器,寄存器又能够构成储存器。寄存器和储存器统称为计算机的记忆装置。RTCrpUDGiT其符号分别表示以下:2.4累加器有何用途?画出其符号。答:累加器作为ALU运算过程的代数和的暂时储存处。2.5三态输出电路有何意义?其符号怎样画?答:三态输出电路使得一条信号传输线既能与一个触发器接通,也能够与其断开而与此外一个触发器接通,进而使得一条信号线能够传输多个触发器的信息。5PCzVD7HxA2.6何谓L门及E门?它们在总线构造中有何用途?答:(1)L门:高电平常使数据装入、低电平常数据自锁此中的电路;E门:E门即三态门,入选通端E门为高电平常,可将信息从A端送到B端。(2)L门专管对寄存器的装入数据的控制,而E门志管由寄存器输出数据的控制。2.7控制字是什么意义?试举个例子说明。答:(1)控制字CON将各个寄存器的L门和E门的按序次排成一列,并且为了防止住所在公共总线中乱窜,规定在某一时钟节拍,只有一个寄存器的L门为高4/27电平,一个寄存器的E门为高电平,进而保证了E门为高电平的寄存器的数据流入到L门为高电平的寄存器中去。jLBHrnAILg(2)略去,详赐教材P31的表2-32.8ROM和RAM各有何特色与用途?答:ROM是只读储存器,是用以寄存固定程序的储存器,一旦程序放进去以后,就不可以再改变。也不可以再写入新的字节,而只好读出此中所储存的内容;xHAQX74J0XRAM是随机储存器(又称读/写储存器),它与ROM的差别在于它不只好读出寄存在此中各个储存单元的数据,并且能够随时写进新的数据,或许改变原有数据。LDAYtRyKfE2.9为何要成立“地点”这个观点?答:因为一个储存器能够包含成百上千的储存单元,能够储存好多半据,为了便于存入和拿出,需要对每个储存单元确立一个固定地点。Zzz6ZB2Ltk2.11译码器有何用途?答:译码器用来确立储存单元的地点。地点译码器常用于计算机中对储存单元地址的译码,马上一个地点代码变换成一个有效信号,进而选中对应的单元。dvzfvkwMI12.12储存地点寄存器(MAR)和储存数据寄存器(MDR)各有何用途?答:MAR将所要找寻的储存单元的地点暂存下来,以备下一条指令之用。MDR是将要写入RAM中去的数据暂存起来,以等候控制器发出指令再将数据写入RAM中去。P332,4,5,6,7,8,9,11,12第3章习题3.1略去3.2程序计数器PC的内容是什么意义?5/27答:程序计数器PC储存的内容是指令的地点码。每次运转指令前,先复位到0,每拿出履行一条指令,PC加1.rqyn14ZNXI3.3指令寄存器IR从PROM接收到指令字(8位)后的运转过程怎样?起什么作用?答:(1)指令寄存器IR从PROM接收到指令字后,就立刻将其高4位送到控制零件。EmxvxOtOco(2)控制零件经过剖析后就发出控制指令,将IR的低4位数送到储存地点寄存器MAR,MAR将此低4位数作为地点并用于接见PROM。SixE2yXPq5故第1次接见PROM的是其指令区,第2次接见的是其数据区。3.4略3.5环形计数器有何用途?什么叫环形字?答:(1)环形计数器用来发出次序控制信号(即用来发出环形字),进而产活力器节拍。(2)环形字是其6位输出端挨次轮番为高电平,并且是在最位一位(左侧第1位)置1后又回到右侧第1位,进而形成环形置位。6ewMyirQFL3.6什么叫例行程序?什么叫机器周期、取指周期和履行周期?本章简化式计算机的机器周期包含几个时钟周期(机器节拍)?机器周期能否必定是固定不变的?kavU42VRUs答:(1)例行程序:由厂家编好的履行每个程序(在本章中即为每条指令)所需要的机器节拍(3个,见P49)y6v3ALoS892)机器周期:履行一条指令的时间。3)取指周期:取一条指令所需的3个机器节拍。4)履行周期:履行一条指令所需的机器节拍(一般也为3个机器节拍)(5)本章简化式计算机的机器周期包含6个机器节拍。6/27增补:个低电平)(6)不必定。只可是固定了在6个节拍达成一个机器周期的计算机被称为固定周期的计算机。3.7控制零件包含哪些主要环节?各有何用途?答:(1)控制零件包含环形计数器、指令译码器、控制矩阵和其余控制电路。2)环形计数器用来产生环形字,进而产活力器节拍;指令译码器:将高四位构成的编码信息译成某一控制线为高电位。控制矩阵:用来产生控制字CON,即产生全部控制信号。其余控制电路包含时钟脉冲发生器、运转/泊车触发器、“启动”和“消除”按钮。其作用见P54.3.8子程序计数器有何用途?答:也是用来作为一个程序计数器的。略去3.12指令寄存器IR是怎样将其指令字段和地点字段分送出去的?这两个字段的位数能否保机器节拍:即一个时钟周期(时钟一个高电平+一M2ub6vSTnP答:(1)指令寄存器IR将8位指令字的高4位作为指令字段送到控制零件,而将低4位做为地点字段经过总线送到储存地点寄存器MAR中去。0YujCfmUCw(2)对,保持不变。这由制造厂家确立。第4章习题4.18086CPU与8088CPU有哪些同样之处?又有哪些差别?7/27答:二者的内部构造基真同样,内部都采纳16位字进行操作及储存器寻址,二者的软件完整兼容,程序的履行也完整同样,两种办理器都封装在同样的40脚双列直插组件(DIP)中。eUts8ZQVRd但它们的外面性能有差别。8086是16位数据总线,而8088是8位数据总线,在办理一个16位数据字时,8088需要两步操作而8086只要要一步。sQsAEJkW5T4.28086CPU从功能上分为几部分?各部分由什么构成?各部分的功能是什么?答:8086CPU从功能上分为总线接口部分BIU和履行零件EU两部分。此中总线接口部分的功能是负责与储存器、I/O端口授送数据,即BIU管理在存储器中存取程序和数据的实质办理过程。GMsIasNXkA履行零件EU的功能负责指令的履行。将指令译码并利用内部的寄存器和ALU对数据进行所需的办理。BIU由4个段寄存器(CS、ES、DS、SS)、16位指令指针寄存器IP、20位的地点加法器和6字节的指令行列构成。TIrRGchYzgEU由4个经过寄存器(AX、BX、CX、DX)、4个专用寄存器(SI、DI、SP、BP)、标记寄存器FR、算术逻辑零件ALU构成。7EqZcWLZNX4.38086CPU有哪些寄存器构成?各有什么用途?标记寄存器的各标记位在什么状况下置位?答:8086CPU由4个通用寄存器(AX、BX、CX、DX)、4个专用寄存器(SI、DI、SP、BP)、标记寄存器FR构成,共9个寄存器。lzq7IGf02E4个通用寄存器既可作为16位寄存器用,也可作为8位寄存器使用。此中AX寄存器也常称为累加器。其余寄存器的用途赐教材。zvpgeqJ1hk8/27标记寄存器有6个状态标记(SF、ZF、PF、CF、AF、OF)和3个控制标记位DF、IF、TF)。NrpoJac3v1其详细置位见P75的表4-1.4.48086系统中的物理地点是怎样获得的?若是CS=2000H,IP=2100H其物理地点应是多少?1nowfTG4KI答:8086系统中的物理地点是经过BIU中的20位地点加法器获得的。物理地点计算公式为CS段地点*16(即二进制左移4位,或许十六进制左移1位)+IP偏按计算公式,此题中的物理地点为20000H+2100H=22100H。4.5什么叫总线周期?8086CPU的一个总线周期包含多少时钟周期,什么情况下要插入TW等候周期?插入多少个TW取决于什么要素?fjnFLDa5Zo答:总线周期是CPU或其余总线控制设施接见一次储存器或I/O端口所需的时间。在总线周期中需要利用总路线。tfnNhnE6e5增补:指令周期:指令周期是机器履行一条指令所需的时间。8086CPU的一个标准总线周期包含4个时钟周期。当4个时钟周期不可以达成所规定的操作时,能够插入一个或多个等候时钟周期TW。HbmVN777sL插入多少个TW取决于所接见的储存器或许I/O设施能否准备就绪,此信号由引脚READY发出。4.6什么是最大模式?什么是最小模式?用什么方法将8086/8088置为最大模式和最小模式?答:所谓最小模式,就是在系统中只有8086/8088一个微办理器。V7l4jRB8Hs最大模式中,饮包含两个或多个微办理器,此中主办理器是8086/8088,其余处理器是协办理器(如数值运算协办理器8087,输入/输出协办理器8089)。83lcPA59W99/27用硬件方法来决定8086/8088的工作模式,详细是经过引脚MN/MX控制信号引脚来决定,其接+5伏,则为最小模式,接地为最大模式。mZkklkzaaP4.7什么是地点锁存器?8086/8088系统中为何要用地点锁存器?锁存的是什么信息?答:1)地点锁存器就是一个寄存器,它依据控制信号的状态,将总线上的地点代码暂存起来,即用于“锁定”一个(系列)数字状态的电路。AVktR43bpw简答:地点锁存器是用来锁存/保留地点的一个寄存器(即一个一般的时序电路),是触发器的原始形式。目的是某次传递数据其实不可以一次达成因此锁存地点免得CPU重复的传递一个地点。ORjBnOwcEd原理:CPU送地点到锁存器8282/8283以后,内存在地点锁存器中找地点,而不是向CPU要地点。2MiJTy0dTT2)因为8060/8088系统采纳的是地点/数据分时复用总线,即用同一总线传输数据又传输地点,当微办理器与储存器或IO互换信号时,第一由CPU发出储存器地址,同时发出同意锁存ALE给锁存器,当锁存器接到该信号后将地点/数据总线上的地点锁存在总线上,随后才能传输数据。gIiSpiue7A个人理解:因为在总线周期的前半部分,CPU老是送出地点信号和BHE(总线高同意)信号,为了通知地点已经准备好了,能够被所锁存,CPU会送出高电平同意锁存信号ALE。此时地点信号和BHE信号被锁存。因为有了锁存器对地点信号和BHE信号的锁存,CPU在总线周期的后半部分,地点和数据都在总线上,保证了CPU对锁存器和I/O接口的读/写uEh0U1Yfmh(3)锁存的是复用总线上的地点信息。4.88086/8088系统中的8286是什么器件?起什么作用?10/27答:(1)8286是总线驱动器(又称总线收发器,双向数据缓冲器)。2)在一个系统所含的外设接口许多时,它用来增添数据总线的驱动能力。4.98086/8088系统顶用时钟发生器8284A产生哪些信号?答:8284A产生恒定的时钟信号、准备信号(READY)及复位信号(RESET)。4.108086最基本的操作是什么?答:是总线操作4.118086/8088系统中引入了哪些中止?是怎样引入的?答:8086共有256种种类的中止。从产生中止的方法,能够将其分为硬件中止和软件中止两大类,硬件中止中的非障蔽中止是经过CPU的NMI引脚进入的,可障蔽中断是经过CPU的INTR引脚进入的,并且只有中间止同意标记IF为1时,非障蔽中止才能进入。IAg9qLsgBX软件中止是CPU依据软件中的某条指令或许软件对标记寄存器中某个标记的设置而产生的。4.12什么是可障蔽中止?什么是非障蔽中止?可障蔽中止是指受中止标记IF障蔽的中止,由INTR引脚进入。非障蔽中止是不受中止标记IF障蔽的中止,由NMI引脚进入。4.13什么是中止向量?中止向量表指的是什么?中止向量表放在什么地方?答:(1)中止向量是中止办理子程序的进口地点,每此中止种类对应一此中止向量。(2)中止向量表是指在8086/8088微机系统的内存中,特意留出的0段的0000~03FH地区,用于寄存全部的256此中止向量。WwghWvVhPE(3)中止向量表放在0段的0000~03FH地区。11/274.14若是中止种类为8,它的中止服务进口地点是多少?答:中止种类8*4=32,即十六进制20H,因此此中止服务进口地点为20H.第5章习题5.1分别指出以下指令中的源操作数和目的操作数的寻址方式:(1)MOVSI,200;源操作数为立刻数寻址(2)MOVCX,DATA[SI];源操作数为(3)ADDAX,[BX][DI];源操作数为基址加变址的寄存器间接寻址(4)ANDAX,BX源操作数为寄存器寻址(5)MOV[SI],AX;源操作数为寄存器寻址(6)PUSHF;为寄存器寻址关于目的操作数,前4小题均为寄存器寻址,(5)题为寄存器间接寻址。5.2试述指令MOVAX,2010H和MOVAX,DS:[2010H]的差别中。答:前者为将十六进制数2010H送到寄存器AX中去;后者为将数据段DS中偏移地点为2010H、2011H两单元中的内容送到AX中去。5.3写出以下指令中内存操作数的所在地点。1)MOVAL,[BX+5]答:源操作数的地点为[BX+5],默认段寄存器为数据段寄存器DS,又因BX为基址寄存器,因此寻址方式为数据段相对基址寻址;asfpsfpi4k2)MOV[BP+5],AX答:目的操作数的地点为[BP+5],默认段寄存器为货仓段寄存器SS,又因BP为基址寄存器,因此寻址方式为货仓段相对基址寻址;ooeyYZTjj1(3)INCBYTEPTR[SI+3]12/27答:此句意思为将SI+3所指的储存单元的内容加1;PTR的意义是定义后来的内容变量的新种类为字节属性,详细用法见第7章P159.BkeGuInkxI内存操作数的地点为[SI+3],属于相对变址寻址;4)MOVDL,ES:[BX+DI]答:源操作数为附带段基址加变址的寻址方式;5)MOVBX,[BX+SI+2]答:源操作数的内存地点为[BX+SI+2],属于数据段相对基址加变址寻址。5.4判断以下指令书写能否正确:1)MOVAL,BX答:不对,一个8位,一个16位;2)MOVAL,CL答:正确3)INC[BX]答:正确4)MOV5,AL答:不对,目的操作数不可以是立刻数。5)MOV[BX],[SI]答:不对,两个储存单元之间不可以直接传递数据;6)MOVBL,F5H答:正确7)MOVDX,2000H答:正确13/278)POPCS答:不对,段寄存器CS和立刻数都不可以作目的操作数9)PUSHCS答:正确。注:本部分能够用DEBUG中的-a指令进行调试以确认指令能否正确5.5设货仓指针SP的初值为2000H,AX=3000H,BX=5000H,试问:1)履行指令PUSHAX后SP=?答:履行PUSH指令时,栈顶指针SP自动减2,因此SP=2000H-2=1FFEH;2)再履行PUSHBX及POPAX后SP=?AX=?BX=?答:履行PUSHBX后SP=1FFEH-2;再履行POPAX后SP=(1FEEH-2)+2=1FFEH;此时AX中的内容为原BX中的内容,故AX=5000H;PgdO0sRlMo而BX中的内容没有变动,即仍是5000H.5.6要想达成把[2000H]送[1000H]中,用指令:MOV[1000H],[2000H]能否正确?假如不正确,应用什么方法?答:不正确,因为两个储存单元之间不可以直接传递数据。能够改为:MOVAX,[2000H]MOV[1000H],AX5.7若是想从100中减去AL中的内容,用SUB100,AL能否正确?假如不正确,应用什么方法?3cdXwckm15答:不正确,因为立刻数不可以做为目的操作数。能够改为:MOVBL,5AH;100的16进制数表达式为5AHSUBBL,AL14/275.8用两种方法写出从88H端口读入信息的指令。再用两种方法写出从42H口输出100H的指令。h8c52WOngM答:法一:INAL,88H;法二:MOVDL,88HINAL,DL(2)法一:MOVAX,0100HOUT42H,AX;将AX中的内容输出到42H、43H两头口中,此中00H送42H端口中,v4bdyGious01H送到43H端口中法二:MOVAX,0100HMOVDX,42HOUTDX,AX5.9若是AL=20H,BL=10H,当履行CMPAL,BL后,问:1)若AL、BL中内容是两个无符号数,比较结果怎样?影响哪几个标记位?答:对无符号数,履行CMP后影响CF、ZF位。故履行后标记为分别为ZF=0;CF=0;(2)若AL、BL中内容是两个有符号数,结果又怎样?影响哪几个标记位?答:对有符号数,履行CMP指令后影响ZF和OF标记位,不影响CF位。履行后标记位分别为ZF=0;OF=0第6章习题6.1.读下边程序段,请问:在什么状况下,本段程序的履行结果是AH=0?BEGIN:INAL,5FH15/27TESTAL,80HJZBRCHlMOVAH,0JMPSTOPBRCHl:MOVAH,0FFHSTOP:HLT解答:AL中的最高位为1时。6.2.读程序:START:INAL,20HMOVBL,ALINAL,30HMOVCL,ALMOVAX,0ADLOP:ADDAL,BLADCAH,0DECCLJNZADLOPHLT请问:(1)本程序实现什么功能?结果在哪里?解答:达成20H*30H,结果在AX中。6.3请编一程序段达成AX*10的任务(要求禁止用乘法指令做)16/27答:MOVBX,AXMOVCL2SHLAX,CL;此句实现了AX=AX*4ADDAX,BX;此句使得AX=5AXSHLAX,1;此句实现了5AX*2=10AX法二:MOVBX,AXMOVCL,4SHLAX,CLSHLBX,1ADDAX,BX6.4.编程序使:(1)AX寄存器低4位清零。(2)BX寄存器低4地点“1”。(3)CX寄存器低4位变反。用TEST指令测试DL寄存器位3、位6能否同时为0,若是,将0送DL;不然l送DH。解答:(1)ANDAX,0FFF0HORBX,000FHXORCX,000FH或许NOTCX(但这样CX的高4位也会变反)(4)TESTDL,48HJZLOOPMOVDH,117/27HLTLOOP:MOVDL,0HLT6.5.编一程序段,达成符号函数(-128≤x≤127):1(x>0)y=0(x=0)-1(x<0)假定x的值寄存在DATAl中,y的值寄存在DATA2中。解答:START:MOVAL,DATA1ANDAL,ALJGEBIGRMOVAL,81H;马上-1给ALMOVDATA2,ALHLTBIGR:JEEQUL;结果为0,转EQULMOVAL,1MOVDATA2,ALHLTEQUL:MOVAL,OMOVDATA2,ALHLT18/276.6.设AX寄存器中有一个16位二进制数,编一程序,统计AX中“l”的个数,统计结果送CX中。J0bm4qMpJ9解答:START:MOVCX,0;CX清零也可用XORCX,CX实现LOOP1:CLC;CF清零SUBAX,0;此句也可用CMPAX,O代替JZSTPSALAX,1;此句也可用SHLAX,1代替JNCNODINCCXNOD:JMPLOOP1STP:HLT6.7.编一子程序利用XLAT指令把十六进制数变换成ASCII码。假定ASCII码寄存在以DAT1为首地点的数据区中,对应的16进制数放在以DAT2为首地点的数据区中,变换结果送以DAT3为首地点的数据区中。XVauA9grYP解答:SUBPROCPROCSUBPROC:PUSHBXPUSHSIPUSHDIPUSHCXPUSHALPUSHDSSTART:MOVBX,DATA1;将首地点DAT1送到BX中,作为表的首地点19/27MOVSI,DAT2MOVDIDAT3MOVCX,16NEST:LODSB;读字节串,从地点为SI的RAM读16进制数到AX/ALXLAT;用换码指令XLAT将AX/AL中的16进制数变换成bR9C6TJscw;对应的ASCII码STOSB;写字节串,从AX/AL写到RAM,马上变换成的ASCII码送;到目标地点DI处LOOPNEST;CX!=0,就转向NEST,SI与DI都会自动增1POPDSpN9LBDdtrdPOPALPOPCXPOPDIPOPSIPOPBXRETSUBPROCENDP此题重点:(1)全部的串操作指令,如LODSB,STOSB等都用寄存器SI对源操作数进行间接寻址;都用寄存器DI为目的操作数进行间接寻址。DJ8T7nHuGT(2)在每次循环后,地点指针SI和DI都会遇到改正;(3)XLAT指令的用法,赐教材P118,用BX给定首地点,用AL/AX给定偏移地点,再用XLAT指令变换。QF81D7bvUA20/27第7章习题7.2假定学生某门课程的成绩放在数据区中,请编一程序,统计该成绩中小于60分的人数,60~90分的人数,大于90分的人数,并显示在屏幕上。4B7a9QFw9h答:剖析:假定学生成绩放在以DATA1为首地点的数据区中。DATASEGSEGMENTDATA1DB100DUP(?)STRING1DB’Thestudentnumberofgradeisbiggerthan90’STRING2DB‘Thestudentnumberofgradeisbetween60and90’STRING3DB’Thestudentnumberofgradeislessthan90’DATASEGENDSSS1SEGEMENTSTACKDW30DUP(?)SS1ENDSCODESEGMENTASSUMECS:CODE,DS:DATASEG,SS:SS1START:MOVAX,DATASEGMOVDS,AXMOVSI,OFFSETDATA1MOVCL,100(D);将学生人数100赋给CLXORBX,BXXORAX,AXXORDX,DXCMPAX,90(D)JAL1CMPAX,60(D)JAEL2INCCH;用CH保存小于60的人数JUMPA2JUMPA2JUMPA2LOOPA1A1:MOVAX,[SI]L1:INCBH;用BH保留大于90的人数L1:INCBL;用BL保留60到90的人数A2:INCSI;----------------在屏幕上输出各类人数ix6iFA8xoXMOVDX,OFFSETSTRING1MOVAH,9INT21HMOVDL,CHMOVAH,2INT21HMOVDX,OFFSETSTRING2MOVAH,9MOVDL,BLMOVAH,2INT21HMOVDX,OFFSETSTRING3MOVAH,9MOVDL,BHMOVAH,2INT21HMOVAH,4CHINT21H;---------输出60-90的学生人数;----------------输出小于60的学生人数;----------程序达成,返回操作系统,结束CODEENDSENDSTARTwt6qbkCyDE21/27第八章习题8.1编一初始化程序,使8255A的PC5端输出一个负跳变。假如要求PC5端输出一个负脉冲,则初始化程序又是什么状况?Kp5zH46zRk答:(1)设置PC5为负跳变(从1到0),即设置PC5引脚为0值,其控制字应设置为:00001010(即0AH)。Yl4HdOAA61故其初始化程序为:MOVDX,8255控制端口地点MOVAL,0AHOUTDX,AL(2)负脉冲为(从0到-1),故其控制字为:00001011(即0BH)故其初始化程序为:MOVDX,8255控制端口地点MOVAL,0BHOUTDX,AL8.2设8251A的控制和状态端口地点为52H,数据输入/输出口地点为50H(输出端口未用),ch4PJx4BlI输入50个字符,将字符放在BUFFERR所指的内存缓冲区中。请写出这段程序。答:剖析:(1)工作方式选择qd3YfhxCzo此题没有讲清用同步或异步,故可自选,在此选择异步传递,波特率为16,偶校验,停止位为2位;8个数据位。E836L11DO5进而确立工作方式选择字为:11111110,即为0FEH;(2)操作命令控制字选择依据题意,是经过8251A作为输入接口用,从外设输入50个字符到主机的缓冲区,一定同意接收,则其RXE位需置1;而8251A既可作输入、又可作输出接口用,22/27故其控制字中一定设为既同意接收(RXE/D2=1,又同意发送(TXEN/D0=1);但在此既然作为接收器从外设

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论