- 328.21 KB
- 2022-04-22 11:37:54 发布
- 1、本文档共5页,可阅读全部内容。
- 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
- 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
- 文档侵权举报电话:19940600175。
'课后答案网您最真诚的朋友www.hackshp.cn网团队竭诚为学生服务,免费提供各门课后答案,不用积分,甚至不用注册,旨在为广大学生提供自主学习的平台!课后答案网:www.hackshp.cn视频教程网:www.efanjy.comPPT课件网:www.ppthouse.com课后答案网www.hackshp.cn
微机原理与接口技术习题参考答案第一章(p20)1、参考答案:冯•诺伊曼计算机的设计思想(EDVAC方案:存储程序通用电子计算机方案):①计算机分为计算器、控制器、存储器、输入和输出装置五个部分;②计算机内采用二进制;③将程序存储在计算机内,简称“程序存储”。其中第三点是冯•诺依曼计算机设计的精华,所以人们又把冯•诺依曼原理叫做程序存储原理,即程序由指令组成并和数据一起存放在存储器中,机器则按程序指定的逻辑顺序把指令从存储器中读出来并逐条执行,从而自动完成程序描述的处理工作。冯•诺伊曼计算机主要以运算器和控制器为中心,结构框图如下图所示。khdaw.com2、参考答案:微处理器就是中央处理器CPU,是计算机的核心,单独的CPU不能构成计算机系统;微型计算机由微处理器、主存储器、I/O接口(注意:不是I/O设备)组成;而微课后答案网型计算机系统除了包括微型计算机外,还有系统软件(即操作系统)、应用软件、外存储器和I/O设备等。微型计算机系统结构如下图所示。www.hackshp.cn3、答案略,见p6~74、答案略,见图2,或教材图1-35、答案略,见p12~136、参考答案:由于8086微处理器的地址总线的宽度为20位,所以它可寻址220=1M字节的存储空间;而PentiumII微处理器的地址总线的宽度为36位,所以它可寻址236=64G字节的存储空间。7、参考答案:①PCI(PeripheralComponentInterconnect:外围设备互联),是Intel公司1992年发布486微处理器时推出的32/64位标准总线,数据传输速率位khdaw.com132MB/s,适用于Pentium1若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com
微型计算机。PCI总线是同步且独立于微处理器的具有即插即用(PNP:Plugandplay,所谓即插即用,是指当板卡插入系统时,系统会自动对板卡所需资源进行分配,如基地址、中断号等,并自动寻找相应的驱动程序)的特性.PCI总线允许任何微处理器通过桥接口连接到PCI总线上。②USB(UniversalSerialBus:通用串行总线),是1994年由Compaq,IBM,Microsoft等多家公司联合提出的。USB有两种规格:V1.1和V2.0,USB1.1传输速度为12M/秒,而USB2.0提高至360到480M/秒。USB2.0是向下兼容USB1.1,这意味着将一个USB2.0的设备插到USB1.1口中,只能按USB1.1的速度运行。USB连接方式十分灵活,支持热插拔,不需要单独的供电系统。可以通过一条4线串行线缆访问USB设备,用于连接键盘、鼠标、投影仪、数码相机等,现在成为每一台计算机都必须配备的标准接口。8、参考答案:DB----Definebyte定义一个字节类型的变量,并为该变量分配内存DW…Defineword定义一个字类型的变量,并为该变量分配内存DD….Definedoublewordkhdaw.com定义一个双字类型的变量,并为该变量分配内存9、参考答案:(1)1101.01b=13.25d(或13.25)(2)111001.0011b=57.1875(3)101011.0101b=43.3125(4)111.0001b=7.0625如何转换?例如:101011.0101b=1×25+1×23+1×2+1+1×2-2+1×2-4=32+8+2+1+0.25+0.0625=43.3125课后答案网10、参考答案:(1)A3.3H=10×16+3+3×16-1=163.1875(2)129.CH=1×162+2×16+9+12×16-1=297.75(3)AC.DCH=10www.hackshp.cn×16+12+13×16-1+12×16-2=172.259375(4)FAB.3H=15×162+10×16+11+3×16-1=4011.187511、参考答案:(1)23=10111B=27Q=17H(2)107=1101011B=153Q=6BH(3)1238=10011010110B=2326Q=4D6H(4)92=1011100B=134Q=5CH12、参考答案:即把下面的数用8位补码表示(1)+32=00100000B(2)-12=11110100B,即求-12的补码(3)+100=01100100B(4)-92=10100100B,即求-92的补码13、参考答案:压缩BCD码就是用4位二进制表示一个0~9之间的十进制数非压缩的BCD码就是用8位二进制表示一个0~9之间的十进制数,8位二进制的最高4位可以位任何数,例如0000,0~9的ASCII码实际上就是0~9的非压缩BCD码的表示。十进制数压缩BCD码非压缩BCD码10200010000001000000001000000000000001044010001000000010000000100301001100000001000000110000000000000001100000010000000000000000000100000000000000000000000014、参考答案:如果二进制最高位为0,则该数为正数,反之,如果最高位为1,则该数为负数,对其做求补运算就得到其相反数。(1)10000000B=-128(2)00110011B=+51(3)10010010B=-78khdaw.com2若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com
(4)10001001B=-11915、参考答案:一个单精度浮点数占4个字节(双字),即32位二进制,其中符号位占1位,指数部分占8位,尾数部分占23位。十进制数表示成单精度浮点数的方法如下:①填充符号位,如果是正数填0,如果是负数填1②将数表示成二进制形式,并进行规格化③对于单精度浮点数,指数加上127(7FH);对于双精度浮点数,指数要加上1023(3FFH),并填充指数位④填充尾数位(1)+1.5①由于是正数,所以符号位为0;②写成二进制并规格化得到1.1×20,③由于2的指数是0,所以指数部分以0+127=01111111填充;④由②知,尾数为1,所以尾数部分以10000000000000000000000(1后面跟22个0)填充,综上,得到+1.5的单精度浮点数表示为:+1.5=00111111110000000000000000000000B写成十六进制数为:+1.5=3FC00000H(2)-10.625=C12A0000H(3)+100.25=42C88000Hkhdaw.com(4)-1200.0=C4960000H16、参考答案:(1)01000000011000000000000000000000B=3.5(2)10111111100000000000000000000000B=-1.0(3)01000000010010000000000000000000B=3.125课后答案网第二章(p55~p56)1、答案略,见p22~242、答案略,见www.hackshp.cnp24~273、答案略,见p334、参考答案(其他可以参照本章相关内容):1CPU:又称微处理器,是计算机系统的核心,一般由逻辑运算单元、控制单元和一些寄存器组成。这些寄存器用于CPU在处理数据过程中数据的暂时保存。它主要完成从存储器中取指令,指令译码;算术逻辑运算;在处理器和存储器或I/O接口之间传送数据;程序的流向控制等。2存储器:是计算机系统的记忆部件,主要用来存储程序和数据。存储器一般分为内部存储器和外部存储器两大类。内部存储器(内存)存放当前正在使用或经常使用的程序和数据,CPU可以直接访问;外存存放“海量”数据,相对来说不经常使用,CPU使用时要先调入内存。内部存储器又可以分为随机存取存储器(RAM)和只读存储器(ROM)。计算机系统存储器的三层结构:按存储容量由低到高(或按存取速度由高到低)分为高速缓冲存储器(CACHE)、主存、辅存三层。3堆栈(Stack):堆栈是在存储器中开辟一个区域,用来存放需要暂时保存的数据;当前栈顶单元一般采用SP指向,栈底设在存储器的高地址区,堆栈地址由高到低增长;堆栈的工作方式是“后进先出”,用入栈指令PUSH和出栈指令POP可将数据压入堆栈或从堆栈中弹出数据,栈顶指针SP的变化由CPU自动管理,入栈操作SP减小,出栈操作SP增大;堆栈的操作以字为单位。4机器语言(MachineLanguage):计算机唯一能接受和执行的语言。机器语言由二进制码组成,每一串二进制码叫做一条指令,一条指令规定了计算机执行的一个动作,一台计算机所能懂得的指令的全体,叫做这个计算机的指令系统,不同型号的计算机的指令系统不同。使用机器语言编写程序是一种相当烦琐的工作,既难于记忆也难于操作,编写khdaw.com3若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com
出来的程序全是由0和1的数字组成,直观性差、难以阅读。不仅难学、难记、难检查、又缺乏通用性,给计算机的推广使用带来很大的障碍。5汇编语言(AssemblyLanguage):是一种符号语言,它和机器语言几乎一一对应,在书写时使用字符串组成的助记符(Mnemonic)代替操作码,用地址符号(Symbol)或标号(Label)代替地址码。使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序,如微软的宏汇编程序MASM.EXE。汇编程序把汇编语言翻译成机器语言的过程称为汇编。汇编语言比机器语言易于读写、调试和修改,同时具有机器语言全部优点。但在编写复杂程序时,相对高级语言代码量较大,而且汇编语言依赖于具体的处理器体系结构,不能通用,因此不能直接在不同处理器体系结构之间移植。6指令(Instruction):指令是能被计算机识别并执行的二进制代码,它规定了计算机能完成的某一操作。一条指令通常由两个部分组成:操作码+操作数。操作码:指明该指令要完成的操作的类型或性质,如取数、做加法或输出数据等。操作数:指明操作对象的khdaw.com内容或所在的存储单元地址(地址码),操作数在大多数情况下是地址码,地址码可以有0~3个。5、参考答案:题号标志位值(1)ZF如果相等,ZF=1;反之,ZF=0(2)SF如果为正,SF=0;反之,SF=1(3)OF如果溢出,课后答案网OF=1;反之,OF=0(4)PF如果结果低8位1的个数为偶数,PF=1;反之,PF=0(5)CF如果相减的第一个数小于第二个数,CF=1;反之,CF=0(6)IFwww.hackshp.cn如果允许中断,IF=1;如果禁止中断,IF=06、答案略,见p36~387、参考答案:设存储单元地址由左向右递增,每个字符以它的ASCII码形式存放存储单元中,则字符串‘Whattimeisit?’在内存中的存储状况如下(以十六进制表示):576861742074696D652069732069743F8、参考答案:a)DW1234Hb)DWA122Hc)DWB100H在内存中的分布为(设存储单元地址由左向右递增,存储单元的阿内容以十六进制表示):341222A100B19、参考答案:题号段起始地址段结束地址a)1000H10000H1FFFFHb)1234H12340H2233FHc)2300H23000H32FFFHd)E000HE0000HEFFFFHe)AB00HAB000HBAFFFH注意:①段起始地址和段结束地址均为20位的物理地址;②段起始的偏移量为0000H,所以段起始地址为段基地址×16khdaw.com+偏移地址;4若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com
③由于每个段的最大容量为64K字节,段结束的偏移量为FFFFH,所以段结束地址为段基地址×16+偏移地址=段基地址×16+FFFFH10、参考答案:a)CS:IP=1000H:2000H下一条指令的存储器地址为(CS)×16+(IP)=12000Hb)CS:IP=2000H:1000H下一条指令的存储器地址为(CS)×16+(IP)=21000Hc)CS:IP=1A00H:B000H下一条指令的存储器地址为(CS)×16+(IP)=25000Hd)CS:IP=3456H:AB09H下一条指令的存储器地址为(CS)×16+(IP)=3F069H11、参考答案:a)DS=1000H,DI=2000H存储单元地址为:(DS)×16+(DI)=12000Hb)SS=2300H,BP=3200H存储单元地址为:(SS)×16+(BP)=26200Hc)DS=A000H,BX=1000H存储单元地址为:(DS)×16+(BX)=A1000Hd)SS=2900H,SP=3A00H存储单元地址为:(SS)×16+(SP)=2CA00H12、参考答案:①堆栈段在存储器中的物理地址(即堆栈段的起始地址)为:khdaw.com(SS)×16+0000H=35000H②入栈10个字节后,SP=0800H-10=07F6H③再出栈6个字节,SP=07F6H+6=07FCH13、参考答案:示意图如左图所示,如果要读取这两个字,则需要对存储课后答案网器进行三次操作。①由于字2A8CH存放在偶地址开始的单元,所以只进行一次存储器操作就可以读取该字;www.hackshp.cn②由于字1EE5H存放在奇地址开始的单元,所以需要进行两次存储器操作才可以读取该字。14、参考答案:段段起始地址段结束地址DS10E40H20E3FHES10F40H20F3FHSS21F00H31EFFHCS31FF0H41FEFH可见,①DS和ES有部分的重叠,重叠区域大小为:20E3FH-10F40H+1=FF00H字节;②ES和SS之间有空隙,空隙的大小为:21F00H-20F3FH+1=0FC2H字节;③SS和CS之间有空隙,空隙的大小为:31FF0H-31EFFH+1=00F2H字节④OFSFZFCF均为017、参考答案:IF标志位控制INTR引脚khdaw.com5若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com
20、答案略,见p4921、答案略第三章(p121~p124)1、参考答案:题号源操作数寻址方式目的操作数寻址方式(1)立即寻址寄存器寻址(2)立即寻址寄存器寻址(3)寄存器间接寻址寄存器寻址(4)寄存器寻址寄存器相对寻址(5)寄存器寻址寄存器相对寻址(6)立即寻址基址变址寻址(khdaw.com7)基址变址寻址寄存器寻址(8)寄存器寻址相对基址变址寻址(9)直接寻址*寄存器寻址(10)寄存器寻址寄存器寻址*对于IN指令,如果是长格式,源操作数的数字不是立即数,而是端口地址,所以源操作数的寻址方式是直接寻址;如果是短格式,即端口地址存放在课后答案网DX寄存器中,则源操作数的寻址方式为寄存器间接寻址,如:INAX,DX对于OUT指令,如果是长格式,目的操作数的数字不是立即数,而是端口地址,所以目的操作数的寻址方式是直接寻址,如OUT20H,AL;如果是短格式,即端口地址存放在DX寄存器中,则目的操作数的寻址方式为寄存器间接寻址,如:www.hackshp.cnOUTDX,AX2、参考答案:题号源操作数寻址方式源操作数有效源操作数指令执行后AX地址物理地址中的内容(1)立即寻址-------------0200H(2)直接寻址0200H10200H2A10H(3)寄存器寻址-------------0200H(4)寄存器相对寻址0203H10203H5946H(5)基址变址寻址0202H10202H463CH(6)相对基址变址寻址0204H10204H6B59H注:10200H~10205H单元存储状况如左图所示3、参考答案:题号源操作数寻址方式源操作数有效地址源操作数物理地址(1)直接寻址0100H(DS)khdaw.com×16+EA=10100H6若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com
(2)直接寻址0030H(DS)×16+EA=10030H(3)寄存器间接寻址0100H(DS)×16+EA=10100H(4)寄存器间接寻址0100H(ES)×16+EA=20100H(5)寄存器间接寻址00A0H(DS)×16+EA=100A0H(6)寄存器相对寻址0110H(DS)×16+EA=10110H(7)寄存器间接寻址0200H(SS)×16+EA=35200H(8)相对基址变址寻址02D0H(SS)×16+EA=352D0H(9)相对基址变址寻址0154H(DS)×16+EA=10154H(10)基址变址寻址0224H(SS)×16+EA=35224H4、答案略5、参考答案:(1)该数据段的存储状况如下表所示:Akhdaw.comBCDE000102030405060708090A0B0C0D0E0F101112131415162410434F4D50555445523412FF0000000000009A450012注:①表格的第一行为变量名称;②第三行的每个小格子代表一个存储单元;③第二行为存储单元的偏移地址以十六进制表示,从中可以看出各变量在数据段中的偏移地址,A的偏移地址为0000H,B的偏移地址为0002H,C的偏移地址为000AH,D的偏移地址为000EH,E的偏移地址为0013H课后答案网;④第三行为存储单元的具体内容,以十六进制表示。(2)写出各条指令执行后的结果指令执行后的结果MOVAL,Awww.hackshp.cnAL=24HMOVDX,CDX=1234HXCHGDL,ADL=24H,A变量的第一个单元的内容变为34HMOVBX,OFFSETBBX=0002HMOVCX,3[BX]CX=5550HLEABX,DBX=000EHLEASI,ESI=0013HLEADI,EDI=0013H6、参考答案:题号错误原因(1)两操作数的类型不一致(2)立即数不能做目的操作数(3)立即数不能直接传送给段寄存器(4)两操作数不能同时为存储器操作数(5)IP寄存器的内容不能由用户更改,而由系统自动修改(6)正确(7)两基址寄存器不能放在一起使用(8)正确(9)两变址寄存器不能放在一起使用(10)不能取立即数的偏移地址,OFFSET操作符使用不当(11)存储单元的偏移地址应为字类型,不能放到字节寄存器中(12)XCHG指令的操作数不能为立即数khdaw.com7若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com
(13)IN指令从端口读取的数据只能放在累加器AL或AX中(14)OUT指令的源操作数应为累加器,目的操作数应为端口地址,且如果端口地址超过0FFH(255),端口地址应放在DX寄存器中7、程序片段如下:LEABX,TABLEMOVAL,57MOVAH,0MOVDL,10DIVDLPUSHAXXLATMOVCH,ALPOPAXMOVAL,AHkhdaw.comXLATMOVCL,ALMOVBX,CX8、解答:SP的变化情况指令执行后SP内容PUSHAX课后答案网SP�SP-200FEHPUSHBXSP�SP-200FCHPOPBXSP�SP+200FEHPOPAXwww.hackshp.cnSP�SP+20100H9、已知AX=1234H,BX=3456H,CX=5678H,DX=789AH,CF=1则单独执行下列各条指令后,各相关寄存器内容是什么?题号指令执行后相关寄存器内容(1)AL=0ACH(2)BX=8ACFH(3)AX=EB24H(4)BX=3455H(5)CX=0A988H(6)BL=57H(7)乘积为双字存放在DX:AX中:DX=03B8HAX=0AD78H(8)商存放在AL中,余数存放在AH中:AL=26HAH=64H10、参考程序片段如下:;定义数据段DATASEGMENTARRAYDB60,65,72,76,77,66,79NEWDB7DUP(0)SUMDB0AVERAGEDB0DATAENDS;程序代码如下……khdaw.com8若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com
MOVCX,7MOVSUM,0MOVSI,0NEXT:MOVAL,ARRAY[SI]ADDSUM,AL;总分存入SUM中ADDAL,5MOVNEW[SI],ALINCSILOOPNEXTMOVAL,SUMMOVAH,0MOVCL,7DIVCLkhdaw.comMOVAVERAGE,AL;平均分存入AVERAGE中11、参考答案:题号结果CF(1)AH=04H0(2)BL=36H0(3)AX=0DAF7H课后答案网0(4)CX=0FFF4H0(5)相关寄存器内容没有改变0(6)www.hackshp.cn相关寄存器内容没有改变0(7)DX=0186H0(8)AL=04H0(9)BH=0F0H0(10)AX=4A10H0(11)BX=1E6CH0(12)DX=4186H012、参考答案:(1)程序片段如下:LEASI,STRINGLEADI,GET_CHARMOVCX,26CLDREPMOVSB(2)程序片段如下:先定义一个附加段,用来存放’Thecomputer’EXTRASEGMENTS2DB‘Thecomputer’EXTRAENDS…LEASI,STRINGLEADI,S2MOVCX,12khdaw.com9若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com
CLDREPZCMPSBJZNEXT;若比较的两个字符串相同,则跳到NEXT执行MOVAL,0;若比较的两个字符串不相同SUBCL,12NEGCLMOVBL,CL;比较的次数存入BL中RETNEXT:MOVAL,1MOVBL,12RET(3)程序片段如下:LEADI,STRING;khdaw.com被查找的字符串STRING作为目的串MOVAL,’&’MOVCX,26CLDREPNZSCASBJNZEXIT;如果没有找到,直接退出DECDI;找到’&’课后答案网字符的位置MOVBYTEPTRES:[DI],20H;用空格字符替换EXIT:RET(4)完整的程序如下www.hackshp.cn*:;这里的DATA既作为数据段,又作为附加段,即数据段和附加段公用一个段DATASEGMENTSTRINGDB‘ThePersonalComputer&TV’COUNTEQU$-STRINGCAPSDBCOUNTDUP(0)CHARTDBCOUNTDUP(0)DATAENDSCODESEGMENTASSUMEDS:DATA,ES:DATA,CS:CODEMAINPROCFARPUSHDSXORAX,AXPUSHAXMOVAX,DATAMOVDS,AXMOVES,AX;把字符串中大写字母传送到CAPS开始的单元中LEASI,STRINGLEADI,CAPSMOVCX,COUNTCLDkhdaw.com10若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com
AGAIN1:LODSBCMPAL,41HJBNEXT1CMPAL,5AHJANEXT1STOSBNEXT1:LOOPAGAIN1;把字符串中其余字母传送到CHART开始的单元中LEASI,STRINGLEADI,CHARTMOVCX,COUNTCLDAGAIN2:LODSBkhdaw.comCMPAL,41HJBNEXTCMPAL,5AHJBENEXT2NEXT:STOSBNEXT2:LOOPAGAIN2;将STRING字符串清零课后答案网LEADI,STRINGMOVAL,0MOVCX,COUNTwww.hackshp.cnCLDREPSTOSBRETMAINENDPCODEENDSENDMAIN13、完整的程序如下:CODESEGMENTASSUMECS:CODEMAINPROCFARPUSHDSXORAX,AXPUSHAXXORSI,SI;SI中存放DX中1的个数XORDX,DXMOVAX,1234HMOVCX,16AGAIN:RORAX,1JNCNEXTINCSIPUSHCXkhdaw.com11若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com
DECCLMOVBX,1SHLBX,CLORDX,BXPOPCXNEXT:LOOPAGAINRETMAINENDPCODEENDSENDMAIN程序的运行结果:AX=1234HDX=2C48HSI=0005H,结果正确14、参考答案:指令跳转类型程序的转向*(khdaw.com1)JMPPROG_N段内直接跳转IP=0278H(2)JMPBX段内间接跳转IP=(BX)=0300H(3)JMP[BX]段内间接跳转IP=((DS)×16+(BX))=(20300H)=4800H(4)JMPFARPROG_F段间直接跳转IP=0ABCHCS=3400H(5)JMPDWORDPTR[BX]课后答案网段间间接跳转IP=(20300H)=4800HCS=(20302H)=00FFH*如果是段内转移,跳转指令只改变IP寄存器的内容,前三条跳转指令是段内跳转;如果是段间跳转,跳转指令同时改变www.hackshp.cnIP和CS寄存器的内容,后两条跳转指令是段间跳转。15、参考答案:寄存器LOOPNEXTLOOPENEXTLOOPNENEXTAX2345223BX471116447CX3210332DX1000110注意:三个循环指令LOOP、LOOPE和LOOPNE终止循环的条件是不一样的。16、参考答案:中断向量表的作用:中断向量表用于存放256种中断的中断服务程序的入口地址,每种类型中断的中断服务程序的入口地址占用4个字节,存储CS和IP,总共需要1024个字节,即1K字节。中断向量表位于内存的最低1K字节,地址范围为:00000H~003FFH。类型3的中断的中断服务程序的入口地址存放在:0000CH~0000FH这四个单元。17、参考答案:如下图所示解释:①由于中断类型号为2,所以该类型中断的中断服务程序入口地址占据内存最低1K字节的2×4,2×4+1,2×4+2,2×4+3四个单元。②前两个单元存放中断服务程序IP值,即0016H,后两个单元存放中断服务程序的CS值,即0485H。③由于CSkhdaw.com和IP值均为一个字,所以在12若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com
存放中断服务程序入口地址的CS和IP值时,低位字节存放在低地址区,高位字节存放在高地址区。18、参考答案:(1)中断类型号为16(2)该中断服务程序的起始地址是:CS:IP=D169H:240BH解释:①由于中断向量表中地址为0040H开始存放某类型中断的中断服务程序的入口地址,所以0040H除以4就可以得到该类型中断的中断类型号n,即n=16。②中断服务程序的入口地址的CS值存放在0042H单元里,IP值存放在0040H单元里。19、参考答案:中断类型号(专用中断)响应中断的条件0:被0除当除数为0或商超过了寄存器所能表示的范围,就产生了一个类型为0的中断1:单步中断,由Debug单步调试当TF=1,每条指令执行后,CPU自动产生类型为1的引起khdaw.com中断2:NMI不可屏蔽中断,用来处理紧急事件,如:电源掉电,CPU必须予以响应3:断点中断,由Debug设置断点用debug调试程序时,可用g命令设置断点,当CPU引起执行到断点时便产生类型为3的中断,同时显示当前各寄存器和有关存储器的内容及下条要执行的指令,供用课后答案网户检查。4:溢出中断如果当前运算的结果产生溢出,则OF=1,下面紧跟溢出www.hackshp.cn中断指令INTO,立刻产生一个类型为4的中断20、参考答案:MOVCX,N;4个时钟周期NEXT:NOP;N×3个时钟周期NOP;N×3个时钟周期LOOPNEXT;(N-1)×17+1×5个时钟周期−35×10由f=5MHz,t=0.2us,延时5ms需要=25000个时钟周期−62.0×10所以:4+N×3+N×3+(N-1)×17+1×5=25000解得:N=1087第四章(p205~p206)1、参考答案(写出各变量在内存中的存储状况)A1DW23H,5678HA2DB3DUP(?),0AH,0DH,’$’A3DD5DUP(1234H,567890H)A4DB4DUP(3DUP(1,2,’ABC’))①变量A1占4个字节,在内存中的存储状况(以十六进制表示,从左到右地址依次增加,以下同):khdaw.com13若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com
23007856②变量A2占6个字节,在内存中的存储状况:0000000A0D24③变量A3占40个字节,在内存中的存储状况:3412000090785600(再重复4遍)④变量A4占60个字节,在内存中的存储状况:010241424301024142430102414243010241424301024142430102414243010241424301024142430102414243010241424301024142430102414243(带下画线部分重复4遍)2、参考答案(写出各指令执行后的结果)指令结果MOVAX,00FFHAND1122H+3344HAX=0066H,先加后与MOVAL,15GE1111BAL=0FFHMOVAX,00FFHLE255+6/5khdaw.comAX=0FFFFH,先加后比较ANDAL,50MOD4AL=02HORAX,0F00FHAND1234OR00FFHAX=0FFFFH,先与后或,再把计算的结果同AX进行或运算,最终结果保存在AX中3、参考答案:L=6,L的值实际就是BUF变量在内存中占有的字节数。4、参考答案:课后答案网PLENGTH=22,PLENGTH的值实际就是三个变量PAR、PNAME和COUNT在内存中占有的总的字节数。5、参考答案:www.hackshp.cnAX=1BX=20CX=16、参考答案:AH=00H7、(1)利用中断调用产生5秒延时datasegmentsdb"5secondisgone",13,10,"$"dataendscodesegmentassumecs:code,ds:datamainprocfarmovax,datamovds,axmovah,2chint21h;取得当前时间:ch�时cl�分dh�秒dl�1/100秒movbl,dhcontinue:movah,2chint21hsubdh,blkhdaw.com14若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com
cmpdh,5jbcontinue;判断两次取得时间间隔是否为5秒钟,如果不是则继续读取时间leadx,s;如果达到5秒,则显示一条信息movah,9int21hmovax,4c00hint21hmainendpcodeendsendmain(2)利用中断调用,在屏幕上显示1~9之间的随机数思路:利用khdaw.comDOS系统功能调用得到当前时间,其中的dl寄存器中存放的是1/100秒,可以用来产生随机数。codesegmentassumecs:codemainprocfarmovah,2chint21h课后答案网moval,dl;取得1/100秒,不同时间运行该程序时得到的这个数字也不一样,具有随机性movah,0www.hackshp.cnmovbl,9;除以9divbl;相除后的余数ah的范围为0~8incah;加1后得到1~9之间的数addah,30h;转换为ASCII码movdl,ahmovah,2int21h;在屏幕上显示该数movax,4c00hint21hmainendpcodeendsendmain8、(1)二进制到压缩BCD码的转换。把AX中的二进制数转换为压缩的BCD码,仍然存放AX寄存器中。例如:如果AX中的二进制数为0010011010010100B=2694H,化成十进制数是9876,其压缩的BCD码是1001100001110110,用十六进制表示是9876H。即这种转换实际就是把2694H转换为9876H。考虑到AX中能够存放的最大的四位压缩BCD数为9999H,所以在转换之前需要判断AX中的二进制数不能超过9999,即270FH。khdaw.com15若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com
第五章(p237~238)1、静态RAM和动态RAM的区别静态RAM(SRAM)动态RAM(DRAM)集成度低高容量小大刷新无附加刷新电路速度快较慢应用场合高速缓冲存储器(CACHE)内存条2、ROM、PROM、EPROM、EEPROM在功能上各有何特点答案略(见教材khdaw.comp208)3、DRAM的CAS和RAS输入的用途是什么?答:为了提高DRAM的集成度,减少引脚的数目,DRAM的地址线分成行地址和列地址两部分,在对存储器进行访问时,先由行地址选通信号RAS把行地址送入行地址锁存器,再由列地址选通信号CAS把列地址送入列地址锁存器,并由读写信号控制数据的读出或写入。4、什么CACHE?作用是什么?处于微处理机中的什么位置?答:CACHE即高速缓冲存储器,通常由课后答案网SRAM组成。其作用是:将经常访问的代码和数据保存到由SRAM组成的高速缓冲存储器中,把不经常访问的数据保存到由DRAM组成的主存中,这样使存储器系统的价格降低,同时又降低了接近零等待的性能,大大的提高了系统的性能。CACHEwww.hackshp.cn位于CPU和主存储器之间。7、用1024×1位的RAM芯片组成16K×8位的存储器,需要多少芯片?在地址线中有多少位参与片内寻址?多少位合成片选信号?(设地址总线为16位)答:需要16×8=128片RAM芯片,其中每8片为一组,总共有16组;地址线中有10位参与片内寻址;由于有16组芯片,余下的6根地址线中至少需要4根合成片选信号,来选中其中的一组芯片。8、现有一存储器芯片的容量为512×4位,若要用它组成4KB的存储器,需要多少这样的芯片?每块芯片需要多少寻址线?整个存储系统最少需要多少寻址线?答:需要的芯片的数目为16片,每两片为一组,共有8组;每块芯片需要9根寻址线;由于共有8组芯片,至少需要3根地址线合成片选信号用来选择8组芯片中的一组;整个存储器系统至少需要9+3=12根地址线。9、利用1024×8位的RAM芯片组成4K×8位的存储器系统,用A15~A12地址线用线性选择法产生片选信号,存储器地址的分配有什么问题?写出各芯片的地址分配。答:①需要的芯片的数目:4片②片内寻址需要的地址线的数目:由于每片RAM芯片内部有1024个存储单元,所以需要10根地址线用于选中其中某一个存储单元,占用地址总线的低10位(A9~A0)③片间寻址需要的地址线的数目:由于需要4片存储器芯片,所以至少需要2根地址线进行译码用于选择4片芯片中的一片,这样占用地址总线的A11和A10。余下的地址总线用线性选择法产生片选信号,这样A15~A12的电平的不同组合就产生了不同的地址空间,使得存储器芯片的地址空间产生重叠。如果A15~A12的电平组合为:A15=1,其余的均为0,则4片存储器芯片的地址范围分别为:A15A14A13A12A11A10A9…A0khdaw.com16若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com
1#:1000000…0=8000H1000001…1=83FFH2#:1000010…0=8400H1000011…1=87FFH3#:1000100…0=8800H1000101…1=8BFFH4#:1000110…0=8C00H1000111…1=8FFFH10、当从存储器偶地址单元读一个字节数据时,写出存储器的控制信号和它们的有效电平(8086工作在最小模式)。答案如下表所示:信号名称有效电平作用MN/MX高电平8086工作在最小模式M/IO高电平8086读写对象为存储器,而不是I/O接口BHEkhdaw.com高电平从偶地址单元读写一个字节A0低电平RD低电平读数据11、当要将一个字写入到存储器奇地址开始的单元中,列出存储器的控制信号和他们的有效电平(8086工作在最小模式)。答案如下表所示:分两次写入:第一次:课后答案网信号名称有效电平作用MN/MX高电平8086工作在最小模式M/IOwww.hackshp.cn高电平8086读写对象为存储器,而不是I/O接口BHE低电平把这个字的低位字节写入奇地址单元A0高电平WR低电平写数据第二次:信号名称有效电平作用MN/MX高电平8086工作在最小模式M/IO高电平8086读写对象为存储器,而不是I/O接口BHE高电平把这个字的高位字节写入接下来的偶地址单元A0低电平WR低电平写数据12、设计一个64K×8的存储器系统,采用74LS138和EPROM2764器件,使其寻址空间范围为:40000H~4FFFFH。解题步骤如下:①存储器芯片数目的确定:由于每片2764芯片为8K×8位,要组成64K×8的存储器系统,需要8片2764芯片,编号为1#~8#;②片内寻址地址线的选择:由于每片2764芯片为8K×8位,即有8K(213=8K)个存储单元,所以需要13根地址线(A12~A0)分别接到芯片的13个地址引脚,来选通片内某个存储单元;③片间寻址地址线的分配:A15、A14和A13分别连接到74LS138的C、B、A端,74LS138的8个输出分别接到8片2764的CS端;khdaw.com17若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com
输入输出选择的芯片号A15A14A13000Y01#001Y12#010Y23#011Y34#100Y45#101Y56#110Y67#111Y78#④余下的地址线的连接:A19~A16和M/IO信号通过逻辑电路接到74LS138的三个控制端G1、G2A和G2B,具体的逻辑电路的设计与题目给定的寻址空间范围有关,如果题目没有给定寻址空间范围,逻辑电路由读者自行设计;⑤根据寻址空间范围设计控制端的逻辑电路:把最低地址khdaw.com40000H表示成二进制形式为:01000000000000000000,可知20位地址总线高4位(A19~A16)的电平组合为A19=0,A18=1,A17=0,A16=0,加上M/IO=1,由此可以设计出74LS138的三个控制端G1、G2A和G2B的逻辑电路。M/IO信号可以同G1端直接相连;A18反向后与A19通过二输入负逻辑与非门(即或门)接到G2A端,A17和A16通过二输入负逻辑与非门(或门)连接到G2B端。⑥其他控制信号的连接:数据总线课后答案网D7~D0直接与存储器芯片的8根数据引脚相连接;RD信号直接芯片的允许输出引脚相连。具体的电路图略。www.hackshp.cn13、用8K×8的EPROM2764,8K×8的RAM6264和74LS138构成一个16K字ROM,16K字RAM的存储器子系统。8086工作在最小模式,系统带有地址锁存器8282,数据收发器8286。画出存储器系统与CPU的连接图,写出各芯片的地址分配。解题步骤如下:①存储器芯片数目的确定:需要EPROM芯片4片,每两片组成一组(两片存储器芯片构成一个字存储器,一片为奇地址存储体,另一片为偶地址存储体),共有2组,编号为1#和2#;需要RAM芯片4片,每两片组成一组(两片存储器芯片构成一个字存储器,一片为奇地址存储器,另一片为偶地址存储器),共有2组,编号为3#和4#。②片内寻址地址线的选择:由于每片2764芯片和6364芯片均为8K×8位,即有8K(213=8K)个存储单元,所以需要13根地址线(A13~A1)分别接到芯片的13个地址引脚,来选通片内某个存储单元。注意:A0不参与片内寻址,用来作为奇偶存储体的选择信号。A0与BHE信号相配合来读/写每一组中的奇偶存储体。③片间寻址地址线的分配:A16、A15和A14分别连接到74LS138的C、B、A端,74LS138的8个输出中的4个输出端分别选择4组(包括2组EPROM芯片和2组RAM芯片)存储器芯片中的一组。输入输出选择的芯片组号A16A15A14000Y01#001Y12#010Y23#011khdaw.comY34#18若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com
④74LS138的三个控制端G1、G2A和G2B的连接:地址信号A19、A18、A17和M/IO通过逻辑电路与三个控制端相连。可以由读者自行设计。如果选择A19=1,A18=0,A17=0,M/IO信号可以同G1端直接相连;A19反向后接到G2A端,A18和A17通过二输入负逻辑与非门(或门)连接到G2B端。⑤二次译码:由于每一组存储器由两片存储器芯片组成,一片为奇地址存储体,另一片为偶地址存储体,这两个存储体的选择需要A0和BHE信号。因此,74LS138的每个输出(Y0~Y3)还需要同这两个信号进行二次译码产生两个信号分别连到该组存储器的两个存储器芯片的CS端。例如:对于第1组存储器,Y0与A0通过二输入或门连到1#的偶地址存储器芯片的CS端;Y0与BHE通过二输入或门连到1#的奇地址存储器芯片的CS端。其他三组的二次译码电路以此类推。⑥各组芯片的地址范围:1#:80000H~83FFFH2#:84000H~87FFFH3#khdaw.com:88000H~8BFFFH4#:8C000H~8FFFFH每组的两个存储器芯片分别占用其中的奇地址和偶地址。14、上题中若从74LS138的Y2开始选择ROM和RAM芯片,写出各块芯片的地址分配。解答:若从74LS138的Y2开始选择ROM和RAM芯片,那么片间寻址A16、A15和A14组合如下表所示课后答案网输入输出选择的芯片组号A16A15A140www.hackshp.cn10Y21#011Y32#100Y43#101Y54#则各组芯片的地址范围为:1#:88000H~8BFFFH2#:8C000H~8FFFFH3#:90000H~93FFFH4#:94000H~97FFFH第六章(p262)7、某微机系统中,有8块I/O接口芯片,每个芯片占有8个端口地址,若起始地址为9000H,8块芯片的地址连续分布,用74LS138作译码器,画出译码电路,并说明每块芯片的端口地址范围。解答:①片内寻址地址线的分配:由于每个芯片占有8个端口地址,则需要3个地址线用于片内寻址以访问片内8个端口,这样占用地址总线的最低3位,即A2、A1和A0。②片间寻址地址线的分配:由于总共有8块I/O接口芯片,则需要8根地址线,并接到74LS138的3个输入端C、B和A,74LS138的8个输出端Y0~Y7分别接8个I/O接口芯片的CS端,以寻址8块芯片中的一块,这样占用地址总线的A5、A4和A3位。khdaw.com19若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com
③74LS138的控制端的连接:根据起始地址9000H可知,剩下的地址线A15~A6的组合为A15=1,其余的地址线的电平信号为低电平,加上M/IO=0,据此可以求出74LS138的3个控制端的连线逻辑。④各个芯片的地址范围:1#9000H~9007H2#9008H~900FH3#9010H~9017H4#9018H~901FH,同理可写出剩下的4块芯片的地址范围。第七章(p302~303)1~4题略5、中断服务子程序中中断指令STI放在不同位置会产生什么不同的结果?中断嵌套时STI指令应如何设置?解答:在进入中断服务程序时,中断允许标志位khdaw.comIF被清0,以屏蔽其他外部中断,在中断服务程序中可以用STI指令重新开中断,即IF=1。①STI指令放在中断服务程序开头和中间的某个位置,可以允许中断嵌套,CPU能响应更高级别的中断请求;②STI指令放在中断服务程序结束之前,几乎没什么作用,因为当前的中断服务快要结束了,中断结束后,自动恢复标志位IF,使IF=1,CPU又可以响应中断了。如果允许中断嵌套,则在中断服务子程序的开头用STI指令开中断。6、中断结束命令EOI放在程序的不同位置会产生什么不同的结果?课后答案网解答:EOI命令能够使中断控制器的ISR(中断服务寄存器)的相应位清0,允许同级别或级别较低的中断请求。在中断服务子程序中,EOI指令可以放在①中断服务程序的开头和中间的某个位置,则在中断处理中提前发出了www.hackshp.cnEOI命令,则清除了正在执行的中断服务,ISR置“1”位被清0,允许响应同级别或低级的中断申请,但是这样会出现重复嵌套,使优先级高的中断不能及时得到服务;②放在中断服务程序返回指令IRET之前,这样当前中断结束之后,同级别或低级的中断申请同样可以得到响应,也不会出现重复嵌套,优先级高的中断也能够得到及时服务。建议在中断返回指令IRET指令前面使用EOI命令。7、中断向量表的功能是什么?解答:CPU响应中断后,必须由中断源提供地址信息,引导程序进入中断服务子程序,这些中断服务程序的入口地址存放在中断向量表中。内存中开辟了一个区域,存放中断向量表,也称中断矢量表。8、假定中断类型号15的中断处理程序的首地址为ROUT15,编写程序建立一个中断向量。参考代码如下:MOVAX,0MOVES,AXMOVDI,15*4;中断类型号乘4得到该类型中断的中断服务程序入口地址存入中断向量表的位置MOVAX,OFFSETROUT15;中断服务程序的偏移地址�AXCLDSTOSW;偏移地址送[60,61]单元MOVAX,SEGROUT15;中断服务程序的段地址�AXSTOSW;段地址送[62,63]单元STI;开中断9、略khdaw.com20若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com
10、给定SP=0100H,SS=0500H,PSW=0240H,在存储单元中已有内容为(00024)=0060H,(00026)=1000H,在段地址为0800H及偏移地址为00A0H的单元中,有一条中断指令INT9。试问,执行INT9指令后,SS、SP、IP、PSW的内容是什么?栈顶的三个字是什么?解答:INT9指令执行后,SS=0500H(没有变化),SP=00FCH(把三个字压入堆栈,SP的值减6),IP=0060H(从中断向量表的00024单元中取出),PSW=0040H(IF=0,TF=0);栈顶的三个字分别是(地址由低到高)原来的IP=00A2H(INT9指令的下一条指令的IP值,即INT9指令的IP值加上INT9指令的长度,即00A0H+2=00A2H)、原来的CS=0800H、原来的PSW=0240H。11、略12、略13、系统中增加一个中断源,在软件上应增加哪些内容,此中断系统才能正常工作。解答:①设置中断类型号;②编写中断服务程序;③设定中断优先级14khdaw.com、第八章(p324)1~3略4、第九章(p354~355)1~3略课后答案网4、www.hackshp.cnkhdaw.com21若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com'
您可能关注的文档
- 微机原理及应用 (徐晨 著) 高等教育出版社 课后答案
- Visual C++程序设计案例教程 (张荣梅 著) 北京大学出版社 课后答案
- 发电厂电气部分 第一版 (姚春球 著) 中国电力出版社 课后答案
- 《计量经济学》第二版(郭存芝 杜延军) 课后习题答案 科学出版社
- 光纤通信原理课后答案 袁国泉
- Visual C++程序设计解析与实训 (张晓如 王芳 刘永良 潘克勤 著) 中国铁道出版社 课后答案
- 光纤通信原理与应用 (方志豪 著) 电子工业出版社 课后答案
- 微机原理与接口技术 第二版 (朱晓华 李洪涛 著) 电子工业出版社 课后答案
- Visual FoxPro程序设计 (高怡新 著) 人民邮电出版社 课后答案
- 《计算机操作系统教程》第二版(左万历 周长林)课后习题答案 高等教育出版社
- 发展经济学 (马春文 著) 高等教育出版社 课后答案
- 国际航运业务英语与函电 (范苗福 著) 大连海事大学出版社 课后答案
- Visual FoxPro程序设计教程 第二版 (袁九惕 著) 湖南教育出版社 课后答案
- 《计算机文化基础》第三版(杨振山等主编 )课后习题答案 高等教育出版
- 发展经济学 (马春文 著) 高等教育出版社 课后答案_
- Visual FoxPro及其应用系统开发 简明版 (史济民 著) 清华大学出版 课后答案
- 《计算机英语(第4版)》课后练习参考答案课后习题答案
- 国际金融 第14版 (托马斯.A.普格尔 著) 中国人民大学出版社 2--11章 课后答案
相关文档
- 施工规范CECS140-2002给水排水工程埋地管芯缠丝预应力混凝土管和预应力钢筒混凝土管管道结构设计规程
- 施工规范CECS141-2002给水排水工程埋地钢管管道结构设计规程
- 施工规范CECS142-2002给水排水工程埋地铸铁管管道结构设计规程
- 施工规范CECS143-2002给水排水工程埋地预制混凝土圆形管管道结构设计规程
- 施工规范CECS145-2002给水排水工程埋地矩形管管道结构设计规程
- 施工规范CECS190-2005给水排水工程埋地玻璃纤维增强塑料夹砂管管道结构设计规程
- cecs 140:2002 给水排水工程埋地管芯缠丝预应力混凝土管和预应力钢筒混凝土管管道结构设计规程(含条文说明)
- cecs 141:2002 给水排水工程埋地钢管管道结构设计规程 条文说明
- cecs 140:2002 给水排水工程埋地管芯缠丝预应力混凝土管和预应力钢筒混凝土管管道结构设计规程 条文说明
- cecs 142:2002 给水排水工程埋地铸铁管管道结构设计规程 条文说明