• 502.74 KB
  • 2022-04-22 11:37:26 发布

微机原理 汇编语言与接口技术 (周杰英 著) 人民邮电出版社 课后答案

  • 44页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'课后答案网您最真诚的朋友www.hackshp.cn网团队竭诚为学生服务,免费提供各门课后答案,不用积分,甚至不用注册,旨在为广大学生提供自主学习的平台!课后答案网:www.hackshp.cn视频教程网:www.efanjy.comPPT课件网:www.ppthouse.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!第一章绪论习题与答案1.把下列二进制数转换成十进制数、十六进制数及BCD码形式。(1)10110010B=(2)01011101.101B=解:(1)10110010B=178D=B2H=(000101111000)BCD(2)01011101.101B=93.625D=5D.AH=(10010011.011000100101)BCD2.把下列十进制数转换成二进制数。khdaw.com(1)100D=(2)1000D=(3)67.21D=解:(1)100D=01100100B(2)1000D=1111101000B(3)67.21D=1000011.0011B3.把下列十六进制数转换成十进制数、二进制数。(1)2B5H=(2)4CD.A5H=课后答案网解:(1)2B5H=693D=001010110101B(2)4CD.A5H=1229.6445D=010011001101.10100101B4.计算下列各式。www.hackshp.cn(1)A7H+B8H=(2)E4H-A6H=解:(1)A7H+B8H=15FH(2)E4H-A6H=3EH5.写出下列十进制数的原码、反码和补码。(1)+89(2)-37解:(1)[+89]原码、反码和补码为:01011001Bkhdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!(2)[-37]原码=10100101B[-37]反码=11011010B[-37]补码=11011011B6.求下列用二进制补码表示的十进制数(1)(01001101)补=(2)(10110101)补=解:(1)(01001101)补=77D(2)(10110101)补=-75D7.请用8位二进制数写出下列字符带奇校验的ASCII码。khdaw.com(1)C:1000011(2)O:1001111(3)M:1001101(4)P:1010000解:(1)C:01000011(2)O:01001111(3)M:11001101(4)P:110100008.请用8位二进制数写出下列字符带偶校验的ASCII码。(1)+:0101011(2)=:0111101(3)#:0100011(4)>:0111110解:(1)+:00101011课后答案网(2)=:10111101(3)#:10100011(4)>:101111109.叙述CPU中PC的作用。解:PC是CPU中的程序计数器,其作用是提供要执行指令的地址。www.hackshp.cnkhdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!第二章微处理器体系与结构习题与答案1.8086/8088CPU由哪两大部分组成?请分别叙述它们的功能。解:8086/8088CPU均由两个独立的逻辑单元组成,一个称为总线接口单元BIU(BusInterfaceUnit),另一个称为执行单元EU(ExecutionUnit)。总线接口单元BIU取指令时,从存储器指定地址取出指令送入指令队列排队;执行指令时,根据EU命令对指定存储器单元或I/O端口存取数据。执行单元EU任务是执行指令,进行全部算术逻辑运算、完全偏移地址的计算,向总线接口单元BIU提供指令执行结果的数据和偏移地址,并对通用寄存器和标志寄存器进行管理。2.khdaw.com8086/8088与传统的计算机相比在执行指令方面有什么不同?这样的设计思想有什么优点?解:总线接口部分和执行部分是分开的,每当EU执行一条指令时,造成指令队列空出2个或空出一个指令字节时,BIU马上从内存中取出下面一条或几条指令,以添满他的指令队列。这样,一般情况下,CPU在执行完一条指令后,便可马上执行下一条指令,不像以往8位CPU那样,执行完一条指令后,需等待下一条指令。即EU从指令队列中取指令、执行指令和BIU补充指令队列的工作是同时进行的。这样大大提高了CPU利用率,降低了系统都对存储器速度的要求。3.状态标志和控制标志有何不同?8086/8088的状态标志和控制标志分别有哪些?解:8086/8088CPU设立了一个两字节的标志寄存器,共九个标志。其中标志位O、S、Z、A、P、C是反映前一次涉及ALU操作结果的状态标志,D、I、T是控制CPU操作特征的控制标志。课后答案网4.8086/8088CPU寻址存储器时,什么是物理地址?逻辑地址?它们之间有何关系?解:8086/8088系统中每个存储单元都有一个物理地址,物理地址就是存储单元的实际地址编码。在CPU与存贮器之间进行任何信息交换时,需利用物理地址来查找所需要的www.hackshp.cn访问的存储单元。逻辑地址由段地址和偏移地址两部分组成。逻辑地址的表示格式为:段地址:偏移地址。知道了逻辑地址,可以求出它对应的物理地址:物理地址=段地址×10H+偏移地址。5.段寄存器CS=1200H,指令指针寄存器IP=FF00H,此时,指令的物理地址为多少?指向这一物理地址的CS值和IP值是唯一的吗?解:根据:物理地址=段地址×10H+偏移地址,指令的物理地址为21F00H。指向这一物理地址的CS值和IP值不唯一。6.8086CPU中BHE信号和A0信号是通过怎样的组合解决存储器和外设端口的读/写的?这种组合决定了8086系统中存储器偶地址体及奇地址体之间应该用什么信号区分?怎样区分?解:若存取一个字节的数据,总是用一个总线周期来完成该操作;若存取一个字,则依该字是规则字还是不规则字需用一个或两个总线周期来完成。对规则字,只用一个总线khdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!周期来完成16位数据的传送,而对于非规则字则用相邻两个总线周期来完成该字的存储操作,先取其奇地址字节(即数据的低位字节),然后存取偶地址字节。在组成存储系统时,总是偶地址单元的数据通过AD0~AD7传送,而奇地址单元的数据通过AD8~AD15传送,即通过总线高字节传送。BHE信号和A0信号控制存储器读写见下表:操作BHEA0使用的数据总线存取规则字00AD15~AD0传送偶地址的一个字节10AD7~AD0传送奇地址的一个字节01AD15~AD8存取非规则字01AD15~AD8(第一个总线周期)10AD7~AD0(第二个总线周期)11为非法码7.khdaw.com请分别画出80386微处理器运行在实模式和保护模式时的存储器映像图。解:80386微处理器在实模式和保护模式时的存储器映像图如下:FFFFFFFFH保护模式000FFFFFH存储器映像实模式存储器映像00000000H00000000H课后答案网8.请说出80386微处理器的控制寄存器CR0、CR1、CR2和CR3的功能作用。解:CR0选择分页,以及选择进入还是退出保护模式;CR1为将来预留;CR2保存任何错误的线性地址;www.hackshp.cnCR3保存页目录的基地址。9.什么是描述符?段描述符和系统描述符之间的区别是什么?解:描述符是一个8字节长的序列,它描述了保护模式下存储器段的地址、长度和属性。段描述符描述数据、代码或堆栈段;而系统描述符则描述call,中断门或任务。10.请说明80386微处理器是如何实现从实模式到保护模式的切换的?解:80386通过设置或清除CR0的D0位来实现实模式到保护模式的切换。11.已知80386微处理器的物理存储地址为C0000000H,请问分页单元如何将线性地址D0000000H映射到此物理存储单元?解:线性地址D0000000H通过访问页目录项1101000000B来寻址物理页,在该项中给出了描述4MB的存储空间的页表地址。页表项0000000000保存存储地址C0000000H,以便将线性地址D0000000H转换为C0000000H。khdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!第三章80x8680x880x866指令系统习题与答案1、指出下列指令中操作数的寻址方式(8086系统)。(1)MOVAX,100(2)MOVAX,[100](3)MOVDL,[BP+SI](4)MOV[BX],CX(5)MOVDX,[SI](6)MOV1234H[BX],DS(7)MOV[DI+5678H],AL(8)MOV12[BP][DI],BH(9)POPCX(10)MOVAX,[BX+SI+10]解:目的操作数源操作数(1)MOVkhdaw.comAX,100寄存器寻址立即数寻址(2)MOVAX,[100]寄存器寻址直接寻址(3)MOVDL,[BP+SI]寄存器寻址基址变址寻址(4)MOV[BX],CX寄存器间接寻址寄存器寻址(5)MOVDX,[SI]寄存器寻址寄存器间接寻址(6)MOV1234H[BX],DS寄存器相对寻址寄存器寻址(7)MOV[DI+5678H],AL寄存器相对寻址寄存器寻址(8)MOV12[BP][DI],BH相对基址变址寻址寄存器寻址(9)POPCX隐含为堆栈寄存器寻址(10)MOVAX,[BX+SI+10]寄存器寻址相对基址变址寻址2、指出下列指令中操作数的寻址方式(80386系统)。课后答案网(1)MOV[EBX+12H],AX(2)MOV[EBP+EDI*2],EBX(3)MOV[EBX*4],BX(4)MOVEDX,[EAX+ESI*8-12H]解:目的操作数源操作数(1)寄存器相对寻址www.hackshp.cn寄存器寻址(2)基址比例变址寻址寄存器寻址(3)比例变址寻址寄存器寻址(4)寄存器寻址相对基址比例变址寻址3、指出以下指令中,哪些指令是非法的,并说明为什么(8086系统)。(1)PUSH1234H(2)MOVCS,AX(3)INAX,300(4)MOVAX,[DX+12](5)MOVBX,[BX](6)MOVDS,1000H(7)XCHGAL,AL(8)MOVAL,100H(9)MOVDX,AL(10)LEABL,[BX+5](11)LEADX,BX(12)MOV[1000H],12H(13)ADDAX,DS(14)SUB[0100H],BYTEPTR[0001](15)SHLBL,2(16)SHRCL,CLkhdaw.com1若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!(17)MULAL,BL(18)INT400解:(1)非法,8086系统不允许PUSH指令的操作数为立即数;(2)非法,MOV指令中CS不能作为目的操作数;(3)非法,端口号大于0FFH;(4)非法,DX不能出现在中括号[]内;(5)合法;(6)非法,不能把立即数赋给段寄存器;(7)合法;(8)非法,源操作数大于0FFH,不能赋给8位寄存器AL;(9)非法,源操作数是8位寄存器,目的操作数却是16位寄存器,不匹配;(10)非法,LEA指令得到的是16位偏移量,但目的操作数是8位寄存器;(11)非法,LEA指令的源操作数只能是存储器操作数;khdaw.com(12)非法,指令存在歧义,无法确定传送的是字节还是字;(13)非法,段寄存器不能参与算术运算;(14)非法,源和目的寄存器不能同为存储器操作数;(15)非法,在8086系统中,移位次数大于1时需要将移位次数存放到CL中;(16)合法;(17)非法,在8086系统中MUL指令没有双操作数的用法;(18)非法,中断类型号大于0FFH。4、指出以下指令中,哪些指令是非法的,并说明为什么(80386系统)。(1)MOVAX,12[EBX][SI*16](2)RCREAX,10(3)PUSH5678H(4)POP1000H(5)MOV[EAX+EAX],EAX(6)MOVAL,[ESP+ESP*2](7)MOVBL,[AX+12]课后答案网(8)IMULAL,BL,12解:(1)非法,比例因子只能是1、2、4、8,不能是16;(2)合法;(3)合法;www.hackshp.cn(4)非法,POP指令的目的操作数不能是立即数;(5)合法;(6)非法,ESP只能作为基址寄存器,不能作为变址寄存器;(7)非法,在386系统中AX不能作为基址寄存器,也不能作为变址寄存器;(8)合法。5、假设(AX)=1234H,(BX)=5678H,(SP)=1000H,指出执行下面的程序段后,各相关寄存器及堆栈段中的内容。PUSHAX;(AX)=?,(BX)=?,(SP)=?,栈顶字节[SP]=?,栈顶第二字节[SP+1]=?PUSHBX;(AX)=?,(BX)=?,(SP)=?,栈顶字节[SP]=?,栈顶第二字节[SP+1]=?POPAX;(AX)=?,(BX)=?,(SP)=?,栈顶字节[SP]=?,栈顶第二字节[SP+1]=?解:(AX)=1234H,(BX)=5678H,(SP)=0FFEH,栈顶字节[SP]=34H,栈顶第二字节[SP+1]=12H(AX)=1234H,(BX)=5678H,(SP)=0FFCH,栈顶字节[SP]=78H,栈顶第二字节[SP+1]=56Hkhdaw.com2若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!(AX)=5678H,(BX)=5678H,(SP)=0FFEH,栈顶字节[SP]=34H,栈顶第二字节[SP+1]=12H6、假设A、B、C、D、X、Y为字节变量,AA、BB、YY为字变量,试利用算术运算指令编写程序段,完成以下各算术运算题。(1)计算YY←A+B*C,其中A、B、C都是无符号数;(2)计算(AA+BB)/(C-D),商赋给X,余数赋给Y,其中AA、BB、C、D都是带符号数;(3)计算YY←(A-B)*C,其中A、B、C都是未组合BCD码。解:(1)MOVAL,BMULCADDAL,AADCAH,0MOVYY,AXkhdaw.com(2)MOVAX,AAADDAX,BBMOVBL,CSUBBL,DIDIVBLMOVX,ALMOVY,AH(3)MOVAL,ASUBAL,BAASMULCAAMMOVYY,AX课后答案网7、利用移位指令编写程序段,实现以下运算。(1)计算AX←AX*10,其中AX为无符号数;(2)32位带符号数存放在寄存器DX和AX中,其中DX存放高16位,AX存放低16位www.hackshp.cn计算(DX,AX)←(DX,AX)*2。(3)32位带符号数存放在寄存器DX和AX中,其中DX存放高16位,AX存放低16位计算(DX,AX)←(DX,AX)/2。解:(1)SHLAX,1MOVBX,AXSHLAX,1SHLAX,1ADDAX,BX(2)SALAX,1RCLDX,1(3)SARDX,1RCRAX,18、指出以下指令执行后,标志寄存器OF、SF、ZF、AF、PF、CF的状态。khdaw.com3若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!(1)(AL)=0FFH,(BL)=20H,执行指令:ADDAL,BL(2)(AL)=01H,(BL)=02H,执行指令:CMPAL,BL(3)(AL)=0FFH,执行指令:INCAL(4)(AL)=0,执行指令:DECAL(5)(AL)=0F0H,(BL)=04H,执行指令:IMULBL(6)(AX)=1F0H,(BL)=08H,执行指令:DIVBL(7)(AL)=12H,(BL)=34H,执行指令:TESTAL,BL(8)(AL)=98H,执行指令:SALAL,1解:OFSFZFAFPFCF(1)000001(2)010111(3)00111×khdaw.com(4)01011×(5)0————0(6)——————(7)000—00(8)100—11注:0表示结果为0,1表示结果为1,×表示结果不变,—表示结果不确定。9、在8086系统下,编写实现如下功能的程序段:(1)从地址为80H的端口中读入一个字节;(2)如果该字节最高位为“1”,则将字节0FFH送到地址为81H的端口中,并退出程序;(3)如果该字节最高位为“0”,则转向第(1)步,继续循环扫描。课后答案网解:参考程序段:AGAIN:INAL,80HTESTAL,80HJZAGAINMOVwww.hackshp.cnAL,0FFHOUT81H,AL10、我们知道,MOV指令并不能直接修改CS、IP的值,但事实上,我们还可以通过其他方法来达到修改CS、IP的目的。试编写一个程序段,使该程序段运行后,(CS)=0100H,(IP)=0000H。解:方法一、利用段间返回指令RETF:MOVAX,0100HPUSHAX;段基址入栈MOVAX,0PUSHAX;偏移量入栈RETF方法二、利用JMP指令实现段间跳转,假设ADDR为双字变量:MOVWORDPTRADDR,0;WORDPTRADDR←偏移量khdaw.com4若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!MOVWORDPTRADDR+2,0100H;WORDPTRADDR+2←段基址JMPDWORDPTRADDRkhdaw.com课后答案网www.hackshp.cnkhdaw.com5若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!第四章80x86汇编语言程序设计习题与答案1、指出以下数据定义伪指令所分配的字节数(8086系统)。(1)DATA1DB10,?,‘A’(2)DATA2DW10DUP(2,3DUP(?),1)(3)DATA3DB‘HELLO,WORLD!’,‘$’(4)DATA4DWDATA4解:(1)3字节;(2)100字节;(3)13字节;(4)2字节。khdaw.com2、指出以下数据定义伪指令所分配的字节数(80386系统)。(1)DATA1DF12,34,56(2)DATA2DFDATA2(3)DATA3DQ0,10DUP(?)(4)DATA4DT0,1,2解:(1)18字节;(3)6字节;(3)88字节;(4)30字节。3、指出以下指令中哪些是无效的,并说明原因。(1)ADDRDB$(2)DATADBF0H,12H(3)1_DATA课后答案网DW1234H(4)@VARDWVAR1;VAR1为一个字节变量(5)MOVAX,[10-VAR1];VAR1为一个字变量(6)MOVBX,[VAR2*2+1];VAR2为一个字变量解:(1)非法,地址计数器$是32位数;www.hackshp.cn(2)非法,以字母开头的16进制数应在前面加“0”,即应为“0F0H”;(3)非法,变量名非法,不能以数字开头;(4)合法;(5)非法,地址表达式不能是“常数-地址”;(6)非法,地址表达式不能出现乘法。4、假设已定义数据段如下:DATASEGMENTORG100HDATA1DB10DUP(1,2,3)DATA2DWDATA1,$DATAENDS且段寄存器DS已初始化为该数据段的段基址(假设段基址为1234H)。请指出以下指令执行后,相应的寄存器中的内容。khdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!(1)MOVAX,WORDPTRDATA1;(AX)=?(2)MOVBX,DATA2;(BX)=?(3)MOVCX,DATA2+2;(CX)=?(4)MOVDX,OFFSETDATA2;(DX)=?(5)MOVSI,SEGDATA1;(SI)=?(6)MOVDI,LENGTHDATA1;(DI)=?(7)MOVSP,TYPEDATA1;(SP)=?(8)MOVBP,SIZEDATA2;(BP)=?解:(1)(AX)=0201H;(2)(BX)=0100H;(3)(CX)=0120H;(4)(DX)=011EH;(5)(SI)=1234H;(6)(DI)=000AH;(7)(SP)=0001H;(8)(BP)=0002H。5、在8086系统下,编写完整程序,实现从键盘上输入8位二进制数,从显示器上显示相应khdaw.com的16进制数,例如从键盘上输入“00010010”,应在显示器上显示“12H”。解:参考程序:DATASEGMENTMSG1DB"Inputbinarynumber(ESCtoexit):","$"MSG2DB0AH,0DH,"Inputerror!",0AH,0DH,"$"DATAENDSOUTPUTMACROASC;定义输出一个字符的宏MOVDL,ASCMOVAH,2INT21HENDM课后答案网CODESEGMENTASSUMECS:CODE,DS:DATAMAINPROCFARPUSHDSMOVwww.hackshp.cnAX,0PUSHAXMOVAX,DATAMOVDS,AXAGAIN:LEADX,MSG1MOVAH,9INT21H;提示输入信息MOVCX,8;输入8位二进制数MOVBL,0L:MOVAH,1INT21HSHLBL,1CMPAL,1BH;ESC键退出JZDONECMPAL,"0";输入“0”khdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!JZNEXTCMPAL,"1";输入“1”JNZERROR;输入其他则出错INCBLNEXT:LOOPLOUTPUT0AHOUTPUT0DHPUSHBXMOVCL,4SHRBL,CLCALLTRAN;显示高4位对应的16进制数POPBXANDBL,0FHkhdaw.comCALLTRAN;显示低4位对应的16进制数OUTPUT"H"OUTPUT0AHOUTPUT0DHJMPAGAINERROR:LEADX,MSG2MOVAH,9INT21HJMPAGAINDONE:RETMAINENDPTRANPROCFARCMP课后答案网BL,0AHJBBELOWADDBL,7BELOW:ADDBL,30HOUTPUTBLRETwww.hackshp.cnTRANENDPCODEENDSENDMAIN6、在8086系统下,编写完整程序,实现从键盘上输入两个4位十进制数,从显示器上显示这两个数之和,例如输入“1234”、“5678”,应在显示器上显示“6912”。解:参考程序:DATASEGMENTMSG1DB"Inputthefirstnumber(ESCtoexit):","$"MSG2DB"Inputthesecondnumber(ESCtoexit):","$"MSG3DB0AH,0DH,"Inputerror!Inputagain:","$"DATAENDSOUTPUTMACROASC;定义输出一个字符的宏khdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!MOVDL,ASCMOVAH,2INT21HENDMCODESEGMENTASSUMECS:CODE,DS:DATAMAIN:MOVAX,DATAMOVDS,AXAGAIN:LEADX,MSG1MOVAH,9INT21H;提示输入第一个数CALLINPUT;输入过程PUSHBXkhdaw.comOUTPUT0AHOUTPUT0DHLEADX,MSG2MOVAH,9INT21H;提示输入第二个数CALLINPUT;输入过程OUTPUT0AHOUTPUT0DHPOPAX;实现两个4位组合BCD码相加ADDAL,BL;低8位相加DAA;校正MOVCL,AL;保存至CLADC课后答案网AH,BH;高8位相加MOVAL,AH;移至ALDAA;校正MOVAH,ALMOVAL,CLMOVwww.hackshp.cnBX,AX;最后结果放在BX中JNCNEXTOUTPUT"1";如果相加结果大于9999,则显示进位“1”NEXT:PUSHBXMOVCL,4SHRBH,CLADDBH,30HOUTPUTBH;显示千位数POPBXPUSHBXANDBH,0FHADDBH,30HOUTPUTBH;显示百位数POPBXkhdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!PUSHBXMOVCL,4SHRBL,CLADDBL,30HOUTPUTBL;显示十位数POPBXANDBL,0FHADDBL,30HOUTPUTBL;显示个位数OUTPUT0AHOUTPUT0DHJMPAGAININPUTPROCFAR;输入一个4位十进制数的过程khdaw.comBEGIN:MOVCX,4MOVBX,0L:SHLBX,1SHLBX,1SHLBX,1SHLBX,1;BX的值乘以16MOVAH,1INT21H;输入CMPAL,1BH;ESC键退出JZDONECMPAL,"0"JBERROR;非数字,出错CMP课后答案网AL,"9"JAERROR;非数字,出错SUBAL,30HXORAH,AHADDBX,AX;将输入加到BX中LOOPwww.hackshp.cnLRETERROR:LEADX,MSG3MOVAH,9INT21HJMPBEGINDONE:MOVAH,4CHINT21HINPUTENDPCODEENDSENDMAIN7、在8086系统下,编写完整程序,实现两个32位带符号数相乘。假设被乘数存放在以字变量MUL1开始的连续4个字节中,乘数存放在以字变量MUL2开始的连续4个字节中中,相khdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!乘结果存放在以字变量RES开始的连续8个字节中。解:参考程序:DATASEGMENTMUL1DW0FFFFH,0FFFFH;被乘数MUL2DW5678H,1234H;乘数RESDW4DUP(0);结果DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATAMAINPROCFARPUSHDSMOVAX,0PUSHAXkhdaw.comMOVAX,DATAMOVDS,AXMOVCX,MUL1MOVBP,MUL1+2MOVSI,MUL2MOVDI,MUL2+2TESTBP,8000H;被乘数是否为负数JZNEXT1NOTBP;为负数,则取反加1NOTCXADDCX,1ADCBP,0NEXT1:TEST课后答案网DI,8000H;乘数是否为负数JZNEXT2NOTSI;为负数,则取反加1NOTDIADDSI,1ADCwww.hackshp.cnDI,0NEXT2:MOVAX,SI;相乘过程MULCXMOVRES,AXMOVRES+2,DXMOVAX,SIMULBPADDRES+2,AXADCRES+4,DXMOVAX,DIMULCXADDRES+2,AXADCRES+4,DXMOVAX,DIkhdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!MULBPADDRES+4,AXADCRES+6,DXMOVAX,MUL1+2XORAX,MUL2+2;判断被乘数和乘数是否同号JNSDONE;同号,则结果为正数,无须修改结果NOTRES;不同号,则结果为负数,须取反加1NOTRES+2NOTRES+4NOTRES+6ADDRES,1ADCRES+2,0ADCRES+4,0khdaw.comADCRES+6,0DONE:RETMAINENDPCODEENDSENDMAIN8、在8086系统下,编写完整程序,找出字节数组ARRAY中的最大值和最小值。假设ARRAY的长度为100个字节,每个字节为一个无符号数,程序执行后最大值将存放到字节变量MAX中,最小值则存放到字节变量MIN中。解:参考程序:DATASEGMENTARRAYDB100DUP(?)课后答案网;字节数组MAXDB?;最大值MINDB?;最小值DATAENDSCODESEGMENTwww.hackshp.cnASSUMECS:CODE,DS:DATAMAINPROCFARPUSHDSMOVAX,0PUSHAXMOVAX,DATAMOVDS,AXLEASI,ARRAYCLDMOVBH,0;存放临时最大值的寄存器MOVBL,0FFH;存放临时最小值的寄存器MOVCX,100AGAIN:LODSBCMPAL,BHkhdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!JNANEXT1MOVBH,AL;如果当前数值比临时最大值大,则代替NEXT1:CMPAL,BLJNBNEXT2MOVBL,AL;如果当前数值比临时最小值小,则代替NEXT2:LOOPAGAINMOVMAX,BHMOVMIN,BLRETMAINENDPCODEENDSENDMAIN9、在8086系统下,编写完整程序,将字节数组ARRAY中的所有数据往高地址的方向移动一khdaw.com位,即原来存放在ARRAY中的字节移动到ARRAY+1中,原来存放在ARRAY+1中的字节移动到ARRAY+2中,……,依此类推。假设ARRAY的长度为100个字节。解:可利用MOVSB指令实现移位,但应该注意,必须从串尾开始移动,因为假如直接从串头开始,将串头移到第二个数,那么第二个数将被覆盖。为使程序能从串尾开始移动,可令方向标志位DF=1。参考程序:DATASEGMENTARRAYDB100DUP(?),?DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATAMAINPROC课后答案网FARPUSHDSMOVAX,0PUSHAXMOVwww.hackshp.cnAX,DATAMOVDS,AXMOVES,AXLEASI,ARRAY+99;SI指向源串尾LEADI,ARRAY+100;DI指向新串尾STD;DF=1,串尾先移动MOVCX,100REPMOVSB;循环移动RETMAINENDPCODEENDSENDMAIN10、在8086系统下,编写在长字符串L_STR中查找短字符串S_STR的完整程序,如果找到匹配的字符串,则将字节变量RES置0FFH,否则置0。例如,在字符串“ABABCD”中可找到khdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!字符串“ABC”,则RES=0FFH。解:参考程序:DATASEGMENTL_STRDB"ABDABABCD";长串L_LTHDW$-L_STR;长串长度S_STRDB"ABC";短串S_LTHDW$-S_STR;短串长度RESDB?;存放结果DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATAMAINPROCFARPUSHDSkhdaw.comMOVAX,0PUSHAXMOVAX,DATAMOVDS,AXMOVES,AXLEASI,L_STRLEADI,S_STRCLDMOVCX,L_LTHSUBCX,S_LTHINCCX;作串比较的次数AGAIN:CALLCOMP;进行串比较INC课后答案网SILOOPAGAINMOVRES,0RETMAINENDPCOMPPROCwww.hackshp.cnFARPUSHCXPUSHSIPUSHDIMOVCX,S_LTHREPZCMPSBJZYES;如果两个串相同,则说明找到POPDIPOPSIPOPCXRETYES:MOVRES,0FFHMOVAH,4CHINT21Hkhdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!COMPENDPCODEENDSENDMAIN11、在80386系统下,编程实现两个64位无符号数相乘。解:参考程序:.386.MODELSMALL.DATAMUL1DD3456789AH,12345678H;被乘数MUL2DD789ABCDEH,3456789AH;乘数RESDD4DUP(0);存放128位结果,初始化为0.CODEkhdaw.comMAIN:MOVAX,@DATAMOVDS,AXMOVEAX,MUL2MULMUL1MOVRES,EAXMOVRES+4,EDXMOVEAX,MUL2MULMUL1+4ADDRES+4,EAXADCRES+8,EDXMOVEAX,MUL2+4MUL课后答案网MUL1ADDRES+4,EAXADCRES+8,EDXMOVEAX,MUL2+4MULMUL1+4ADDwww.hackshp.cnRES+8,EAXADCRES+12,EDXMOVAH,4CHINT21HENDMAINkhdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!第五章微处理器总线与时序习题与答案1.总线周期的含义是什么?8088/8086基本总线周期由几个时钟周期组成?解:总线周期是指CPU从存储器或I/O端口存取一个字节所需的时间。8088/8086基本总线周期由4个时钟周期组成。2.从引脚信号来看,8086和8088有什么不同?解:从引脚信号来看,8086的地址引脚与数据引脚复用,引脚为AD0~AD15,而8088同样也采用了地址引脚与数据引脚复用,但引脚为AD0~AD7。3.试说明8086/8088工作在最小方式下和最大方式下系统基本配置的差别。在最大组态khdaw.com下,8086/8088的外围电路由哪些器件组成?它们的作用是什么?解:8086/8088工作在最大方式下时,需要使用8288总线控制器,但是工作在最小方式下时不需要使用。8086/8088工作在最大方式下时,外围电路包括8284时钟发生器、8286数据发送/接收器、8282地址锁存器以及8288总线控制器。8284将晶体振荡器的振荡频率分频,向8086/8088以及计算机系统提供符合定时要求的时钟信号、准备好信号和系统复位信号。8286数据发送/接收器增加数据总线的驱动能力。8282地址锁存器用来锁存CPU地址信号,特别是地址-数据线、地址-状态线上出现的地址信号。8288根据CPU要执行的指令提供的状态信号建立控制时序,输出读写控制命令。4.8086/8088数据信号与地址信号是共用引脚的,怎样把这两种不同的信号分离出来?解:8086/8088工作时,对数据信号与地址信号的公用引脚进行分时复用,采用8282地址锁存器来分离数据与地址信号。在课后答案网T1状态时,CPU提供ALE地址锁存允许信号,将地址信号锁存到8282地址锁存器。然后,在T2、T3、TW状态,用作传送数据信号。5.在总线周期的T1、T2、T3、T4状态,CPU分别执行什么动作?什么情况下需要插入等待状态TW?TW在哪儿插入?怎样插入?解:CPU在T1、Twww.hackshp.cn2、T3、T4这四个状态完成一个总线周期。在T1状态,把地址信息从地址线A19~A16,A15~A8和AD7~AD0上输出,且立即发出地址锁存信号ALE,把在A19~A16上出现的高4位地址和在AD15~AD0(8088则是AD7~AD0)上出现的地址,在外部地址锁存器上锁存。在T2状态,CPU发送读写等控制命令。在T3、T4状态,CPU发送或接收数据,并在T4状态结束此总线周期。当外部存储器或I/O端口的时序不能与CPU的时序相配合时,就需要插入TW周期。因此,在CPU中设计了一条准备就绪READY输入线,即存储器或I/O端口输给CPU的状态线。CPU在T3采样READY线,若为高电平,则在T3状态后进入T4状态。若存储器或I/O端口来不及在T4状态的前沿把数据准备好,则当CPU在T3状态采样时应使READY线为低电平,并在T3状态后插入一个等待状态TW。6.8086/8088在最大组态下的存储器读/写周期和I/O周期中,8288发出的控制信号为什么能够和8086/8088发出的地址信号相配合?khdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!解:8288总线控制器根据CPU要执行的指令提供的状态信号建立控制时序,输出读写控制命令。8288总线控制器接收8086/8088的状态信号S0,S1,S2,以确定CPU执行何种操作,发出相应的控制命令信号,以控制系统中有关部件的工作。7.在T1状态下,8088/8086CPU数据/地址线上是什么信息?用哪个信号可将此信息锁存起来?数据信息是什么时候送出的?在最大组态下,怎样使系统地址总线和系统数据总线上同时分别存在地址信息和数据信息?解:在T1状态下,8088/8086CPU数据/地址线上是地址信息。用ALE信号可将地址信息锁存起来。数据信息在T2开始以后送出。在最大组态下,AD15~AD0在8288发出的ALE下降沿控制下将地址信息锁存后送系统地址总线A15~A(对08088则为AD7~AD0)。A19/S6~A16/S3经ALE下降沿控制锁存后送系统地址总线A19~A16;CPU的AD0~AD7在8288发出的DT/R(数据收发控制信号)和DEN(数据允许信号)信号控制下,经双向总线驱动器连接到系统数据总线D7~D0,这样,实现了地址和数据及状khdaw.com态信号的分离,使地址信号和数据信号同时分别出现在系统地址总线和数据总线上。8.RESET信号来到后,8086/8088系统的CS和IP分别等于多少?解:CS=FFFFH,IP=0000H9.在中断响应过程中,8086/8088往8259A发的两个INTA信号分别起什么作用?解:CPU在每一个中断响应地机器周期,都给出中断响应信号INTA。在第一个机器周期,使AD0~AD7浮空。在第二个机器周期,被响应地外设(或接口片子)应向数据线上输送一个字节的中断向量类型,CPU把它读入后,就可以在中断向量表上找到该设备的服务程序的入口地址,转入中断服务。10.总线保持过程是怎样产生和结束的?画出时序图并说明。解:总线保持过程包括总线保持请求和保持响应操作。当一个系统中具有多个总线主模课后答案网块时,除CPU之外的其它总线主模块为了获得对总线的控制,需向CPU发出总线保持请求信号,当CPU接到此请求信号,并在同意让出总线时,就向发该请求的主模块发响应信号。具体过程是:在最小模式下,CPU在每个时钟周期的上升沿处,对HOLD引脚进行检测www.hackshp.cn,若HOLD已变为高电平(有效状态),则在总线周期的T4状态或空闲状态TI之后的下一个状态,由HLDA引脚发出响应信号。同时CPU将把对总线的控制权转让给发出HOLD的设备,到发出HOLD信号的设备再将HOLD变为低电平(无效)时,CPU才又收回总线控制权。时序图如下:T4或T1//CLK//HOLD//HLDAA15~AD0,A19/S6~A16/S3,//RD,WR,INTA,M/IO,DEN,DT/Rkhdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!第六章半导体存储器习题与答案1、半导体存储器可分为哪几个类型?试分别说明它们各自的特点。解:从存取方式来分,有读写存储器RAM和只读存储器ROM。RAM也称为随机存取存储器,CPU在执行程序的过程中能对它进行读出和写入操作。在RAM中可分为双极型(Bipolar)和MOS型RAM两大类。双极型RAM具有很高的存取速度,但是双极型RAM的集成度低,单片容量小,功耗大,成本高。MOS型RAM具有功耗低、集成度高、单片容量大的特点,但存取速度则较慢。MOS型RAM又可以分为静态RAM和动态RAM两种。ROM器件的功能是只许读出,不许写入,一旦有了信息,就不能轻易改变,也不会在掉电时丢失,所以它只能用在不需要经常对信息进行修改和写入的地方。ROM可以分为4种:掩膜khdaw.comROM、可编程ROM、可擦除、可编程ROM和可电擦除的、可编程ROM等。2、列出半导体存储器的主要性能指标。解:半导体存储器的性能指标有:存储芯片容量、存取速度、可靠性、价格、易失性、集成度、功耗和电源种类等。3、试比较SRAM和DRAM的优缺点。解:SRAM用由6管构成的触发器作为基本电路,不需要刷新电路,而且易于用电池作后备电源。DRAM是利用电容的记忆功能保存信息,由于电容存在漏电电流,即使电源不掉电,电荷会随着电容放电而泄露,从而导致信息丢失,所以需要刷新。与SRAM相比,DRAM的主要优点是集成度高、功耗小、价格低。而不足之处是与CPU的接口电路比较复杂,有两个问题要解决:一个是上面所讲的刷新问题,另一个是地址信号课后答案网的输入问题。DRAM一般用于组成大容量的内存系统。4、若某微机系统的系统RAM存储器由四个模块组成,每个模块的容量为128K字节,若四个模块的地址是连续的,最低地址为00000H,试指出每个模块的首末地址。解:第一个模块:00000Hwww.hackshp.cn~1FFFFH;第二个模块:20000H~3FFFFH;第三个模块:40000H~5FFFFH;第四个模块:60000H~7FFFFH。5、对于下列芯片,它们的片内地址线各有多少根?若分别用以下芯片组成容量为64K字节的模块,试指出分别需要多少芯片?(1)Intel2114(1K×4位);(2)Intel6116(2K×8位);(3)Intel2164(64K×1位);(4)Intel3148(4K×8位)。解:(1)片内地址线10根。需要128片。(2)片内地址线11根。需要32片。(3)片内地址线16根。需要8片。khdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!(4)片内地址线12根。需要16片。6、试比较存储器读周期和写周期的差别。解:存储器的读周期和写周期的主要差别在于数据出现在数据总线上的时间不同和总线上数据的来源不同。对于存储器的读周期,是在地址线和选通控制线稳定后,被读出的数据才出现在数据总线上,数据来自于存储器;而对于存储器的写周期,则是往存储器内写入新的信息,故在所有选通控制信号出现之前,数据线上应有待写的稳定数据,数据来自于CPU。7、某RAM芯片,容量为4K×4位,该芯片有数据线、地址线、片选信号线CS和读写控制线WR。请问:(1)该RAM芯片有几根地址线?几根数据线?30000HRAM#1(2)现要在8088为CPU的微机系统中,用该芯片构成32000H右图中RAM#2和RAM#4两个内存模块,请画出扩展RAM#2这两个模块的存储器连接图。(连接图中可选用三八译码khdaw.com34000HRAM#3器和与非门等。)解:(1)该RAM芯片有12根地址线,4根数据线。37000HRAM#4(2)RAM#2地址范围:32000H—33FFFH。38000HRAM#5可分成两组:第一组为32000H~32FFFH;图6-31题7内存模块示意图00110010000000000000……00110010111111111111第二组为33000H~33FFFH00110011000000000000……课后答案网00110011111111111111RAM#4为另一组,地址范围为:37000H~37FFFH00110111000000000000……00110111111111111111www.hackshp.cn上面每组用两块RAM芯片组成,共用6片。上面的地址范围可以看出,三组地址范围的高5位A19~A15是相同的,都是00110;中间三位A14A13A12的值分别是010、011、111。因此,可以将A14A13A12连三八译码器的C、B、A输入引脚,用三八译码器输出选择线Y、Y、Y分别作为三组的组选择信号线,连各237芯片的CS引脚。三组地址范围的低12位都是从全0变到全1,用于RAM片内单元的寻址,因此地址总线中的A0~A11的连各RAM芯片的地址引脚。连接图如下页所示。khdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!khdaw.com8、某微机系统的CPU为8088,且工作于最小方式,原有系统RAM存储器模块的容量为128K字节,其首地址为40000H,现用2128RAM芯片(容量2K×8位)扩展一个容量为16K字节的存储器模块,地址和原有RAM模块的地址相连接,试完成该扩展RAM模块的设计。(注:可选用3:8译码器、与门、或门、非门等)。解:原模块:128K=20000H;原模块地址范围:40000H~5FFFFH新模块:16K=4000H;新模块地址范围:60000H~63FFFH2128RAM芯片(容量2K×8位)扩展一个容量为16K字节的存储器模块,需要8片。20位地址中,6位模块选择,3位送3:8译码器用于片选,11位片内选择。扩展RAM模块连接图如下所示。课后答案网www.hackshp.cnkhdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!第七章输入和输出习题与答案1、请说明为什么输入接口的数据缓冲寄存器必须有三态输出功能而输出接口却不需要的原因。解:输入接口的数据缓冲寄存器的输出端是直接接在数据总线上的,如果数据寄存器没有三态输出功能,则无论数据寄存器被寻址选中或未被选中,其数据都会被送上数据总线,若此时总线上真正要传送的数据与该输入缓存器的内容不一致时,就会发生总线冲突。所以,输入接口的数据缓冲器必须有三态输出功能,以便当接口未被寻址选中时,其输出端处于高阻态,从而与总线隔离。对于输出接口来说,是输入端与数据总线相连,而输出端是与外设相连,因此其输出不影响总线状态;另外,一个外设一般只与一个输出数据缓存起相连,因此输出接口的数据缓khdaw.com存器无须有三态输出功能。2、8086/8088CPU中哪些寄存器可以用于I/O寻址?若I/O端口地址分别是10H和100H,分别写出向这两个端口写入73H的程序段。解:8086/8088CPU内可以用于I/O寻址的寄存器为AL、AX和DX。向端口10H写入73H的程序段为:MOVAL,73HOUT10H,AL向端口10H写入73H的程序段为:MOVAL,73HMOVDX,100HOUTDX,AL3、图为7段显示器接口,显示器采用共阳课后答案网极接法,试编写程序段,使AL中的一位十六进制数显示于显示器上。输出锁存器地址为40H。解:TABLEDB3FHwww.hackshp.cn,06H,5BH,4FHDB66H,6DH,7DH,07HDB7FH,67H,77H,7CH,DB39H,5EH,79H,71HLEABX,TABLEXLATOUT40H,AL4、PC/XT机有哪些输入输出方式?各自的特点如何?DMA控制器应具备哪些功能?解:无条件方式:需要外设处于就绪状态,硬件简单;查询方式:CPU需要不断地查询外设是否就绪,浪费CPU时间,硬件较简单;中断方式:外设准备好后,向CPU发中断请求,请求CPU完成数据传输,外设与CPU并行;硬件又比前两者复杂。DMA方式:CPU对DMAC初始化后,由DMAC控制总线完成数据传送;khdaw.comCPU与I/O若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!并行。速度快,用于大量数据传输。DMAC占用总线时,CPU不能用。硬件更复杂。5、与程序控制I/O方式相比较,中断控制方式有哪些优点。解:用查询方式使CPU与外设交换数据时,CPU要不断读取状态位,检查输入设备是否已经准备好数据,输出设备是否忙碌或输出缓冲器是否已空。若外设没有准备就绪,CPU就必须反复查询,进入等待循环状态。由于许多外设的速度很低,这种等待过程会占用CPU的大部分时间,但是真正用于传输数据的时间却很少,使CPU的利用率变得很低。为了提高CPU执行有效程序的工作效率和提高系统中多台外设的工作效率,可以让外设处于能主动申请中断的工作方式,这在有多个外设及速度不匹配时,尤其重要。采用中断方式后,CPU平时可以执行主程序,只有当输入设备将数据准备好了以后,或者输出端口的数据缓冲器已空时,才向CPU发中断请求。CPU响应中断后,暂停执行当前的程序,转去执行管理外设的中断服务子程序。在中断服务程序中,用输入或输出指令在CPU和外设之间进行一次数据交换。等输入或输出操作完成以后,CPU又会去执行原来的程序。这样,外设在处理数据期间,CPU就不必浪费大量的时间去查询它们的状态,因此中断传送khdaw.com方式的好处就是能大大提高CPU的工作效率。6、请用74LS138译码器及其他门电路设计一个端口地址译码器,使CPU可以对一下地址范围寻址:(1)740H~747H;(2)750H~757H;(3)758H~75FH;(4)768H~76FH。解:各地址范围地址线的逻辑电平:A10A9A8A7A6A5A4A3A2A1A0(1)11课后答案网101000×××(2)11101010×××(3)11101011×××(4)11101101×××www.hackshp.cn7、图为开关量检测与指示电路接口。显示器采用7段LED显示器,它由BCD-7段译码、驱动器所驱动,并采用共阴极接法(只有阴极为低电平,显示器才会发亮),试编写一段程序来统计开关闭合的个数,并显示在LED显示器上。输入缓冲器和输出数据锁存器地址为20H。khdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!khdaw.com解:INAL,20HMOVBL,ALMOVAL,00010000BMOVCX,8AGAIN:SHRBL,1JNCNEXTINCALNEXT:LOOPAGAINOUT20H课后答案网,AL8、什么是DMA?DMA操作可以分几个主要步骤?解:(1)DMA方式:即直接内存访问方式,完全由硬件执行I/O交换的工作方式。在这种方式下,DMA控制器从CPU完全接管对总线的控制,数据交换不经过CPU,而直接在内存与设备之间进行。www.hackshp.cn(2)DMA操作可以分3个主要步骤:即传送前预处理、正式传送、传送后处理阶段。①预处理阶段:由CPU执行几条输入输出指令,测试设备状态。向DMA控制器的设备地址寄存器中送入设备号,并启动设备。向内存地址计数器中送入起始地址。向字计数器中送入交换的数据字个数。②正式传送阶段:外设准备好发送数据(输入)或接收数据(输出)时,发出DMA请求,由DMA控制器向CPU发出总线使用权的请求(HOLD)。CPU在本机器周期执行完毕后响应该请求并使CPU的总线驱动器处于高阻状态,然后与系统总线相脱离,DMA控制器接管数据总线和地址总线的控制,并向内存提供地址。在内存和外围设备之间进行数据交换。每交换一个字则地址计数器和字计数器加1,当记数值到0时,DMA操作结束并向CPU提khdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com图开关量检测与指示电路 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!出中断报告。③DMA后处理工作:一旦DMA的中断请求得到响应,CPU将停止主程序的执行,转去执行中断服务程序进行DMA操作的后处理。包括校验送入内存的数据是否正确;决定使用DMA方式传送数据还是结束传送;测试传送过程中是否发生错误。9、8237A在做DMA控制时,能为存储器和I/O设备提供多少条地址线?分别说明下列8237A引线的作用:(1)DB0~DB7;(2)A0~A3;(3)A4~A7。解:DB0~DB7:数据/地址线,双向三态。从态时为数据线,作为CPU对8237A进行读/写操作的数据输入/输出线。主态时为地址线,提供高8位地址线A8~A15,DMA传送时还是数据的输入输出段端。8237A-5作DMA控制时可以为存储器和I/O设备提供16位地址线:Akhdaw.com0~A7(低8位)和DB0~DB7(高8位)。A0~A3:最低地址线,双向三态。从态时作输入,选中8237A的16个端口地址;主态时作输出,提供20位内存地址最低4位。A4~A7:地址线,单向。主态时作输出,提供20位地址中的A4~A7。10、试利用通道1从外设输入54KB的一个数据块,传送至5678H开始的存储区域(增量传送),采用块传送方式,传送完不自动初始化,外设的DREQ和DACK都为高电平有效。已知8237A的端口地址为50H~5FH。解:OUT5DH,AL;主清除命令MOVAL,78H;基地址和当前地址的低8位OUT50H,ALMOVAL,56H;基地址和当前地址的高8位OUT50H,AL课后答案网MOVAL,00H;基字节数和当前字节数低8位OUT51H,ALMOVAL,0D8H;基字节数和当前字节数高8位OUT51H,ALMOVAL,85Hwww.hackshp.cn;模式控制字OUT5BH,ALMOVAL,01H;屏蔽控制字,使通道1的屏蔽位复位(不屏蔽)MOVAL,0A0H;命令字OUT58H,ALkhdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!第八章中断习题与答案1、CPU响应外设中断请求的必要条件是什么?解:CPU对外部中断的请求,通常必须满足以下条件才能响应:(1)置位中断请求触发器;(2)中断屏蔽触发器没有被屏蔽;(3)开放CPU内部中断,IF=1(4)没有优先级别更高的中断请求正在被响应或正发出、挂起;(5)没有总线请求或NMI请求;khdaw.com(6)CPU现行指令执行结束。2、试述中断的一般过程。解:中断过程是指从中断源提出中断请求,到中断被CPU响应并被处理,最好返回到被中断的程序的全过程。经历的处理步骤包括:(1)中断请求。需要服务的中断源向CPU发出中断请求;(2)中断判优。由中断优先权判决电路识别中断请求的中断源,当同时有多个中断源提出请求时,按一定的优先级顺序选择响应中断;(3)中断响应。当满足CPU响应中断的条件时,CPU获取响应的中断信息,即中断类型码,并自动保护某些现场信息,从而转入中断服务处理程序的过程;(4)中断处理。执行中断服务程序,为发出中断请求的中断源服务;(5)中断返回。恢复现场信息,返回被中断的程序。3、已知(SP)=0100H课后答案网,(SS)=0300H,(PSW)=0240H,以及00020H至00023H单元的内容分别是40H,00H,00H和01H,原来CS=0900,IP=00A2,求执行INT8指令并进入该指令响应的中断例程时,SP,SS,IP,CS,PSW和堆栈最上面三个字的内容。解:SS:SP=0300:00FAH,CS:IP=0100:0040H,PSW=0040H堆栈最上面三个字的内容分别为:www.hackshp.cn00A2H,0900H,0240H。4、试编写只有一块8259A的8088系统中的8259A的初始化程序,8259A的地址为02C0H和02C1H,要求:(1)中断请求输入采用电平触发;(2)IR7请求的中断类型是23;(3)采用缓冲器方式;(4)采用普通的EOI命令。解:INTA0EQU02C0HINTA1EQU02C1HMOVAL,1BH;00011011BMOVDX,INTA0OUTDX,ALMOVAL,16HMOVDX,INTA1khdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!OUTDX,ALMOVAL,09H;00001101BOUTDX,AL5、试根据不同的假设分别编写一段使8259A的优先级顺序如下的程序:IR4,IR5,IR6,IR7,IR0,IR1,IR2,IR3假定CPU为8088,8259A的偶地址为20H。假设1:当前的最高优先级为IR0;假设2:当前的最高优先级为IR3。解:(1)MOVAL,11X000011B;将IR3设置为最低,IR4为最高OUT20H,AL(2)MOVAL,10X00000B;自动旋转将刚服务完的IR3优先权降为最低OUT20H,ALkhdaw.com或:同(1)。6、试编写一段将8259A中的IRR、ISR和IMR的内容传送至存储器中从REG_ARR开始的数组中去的程序,假定CPU为8086,8259A的偶地址为50H。解:对于8086CPU,若8259A的偶地址为50H,则奇地址为52HINTA0EQU50HINTA1EQU52HMOVAX,SEGREG-ARRMOVES,AXLEADI,REG-ARRCLDMOVAL,0AH;00001010BMOVDX,INTA0OUTDX课后答案网,AL;写OCW3,设置为读IRR方式INAL,DXSTOSBMOVAL,0BHOUTDX,AL;写OCW3,读ISRINAL,www.hackshp.cnDXSTOSBMOVDX,INTA1INAL,DX;读IMRSTOSB7、设在最大方式下,8086系统中有一块主8259A和一块从8259A,从8259A接至主8259A的IR1上,主、从8259A的偶地址分别是0200H和0210H。主8259A的IR0中断类型码是30H,从8259A的IR0的中断类型码是38H。所有请求都是边沿触发,用EOI命令清ISR位,两块8259A采用级联方式连接。主、从8259A的IMR都清除,SP/EN用作输入。试编写该中断系统的初始化程序。解:对于8086CPU,若主8259A的偶地址为0200H,则奇地址为0202H;若从8259A的偶地址为0210H,则奇地址为0212H。;主8259A初始化程序:khdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!INTA0EQU0200H;INTA1EQU0202HMOVAL,11H;00010001BMOVDX,INTA0OUTDX,AL;ICW1MOVAL,30HMOVDX,INTA1OUTDX,AL;ICW2MOVAL,02H;00000010BOUTDX,AL;ICW3MOVAL,11H;00010001BOUTDX,AL;ICW4;从8259A初始化程序:khdaw.comINTA0EQU0210HINTA1EQU0212HMOVAL,11HMOVDX,INTA0OUTDX,AL;ICW1MOVAL,38HMOVDX,INTA1OUTDX,AL;ICW2MOVAL,01HOUTDX,AL;ICW3MOVAL,01H;00000001BOUTDX课后答案网,AL;ICW48、若一个中断系统有一块主8259A和三块从8259A,从8259A分别接在主8259A的IR2,IR3和IR6上,如主8259A的IMR置成01010000,各从8259A的IMR的所有位都清零。除接在IR3上的那块8259A外,其他8259A都按全嵌套方式工作,而接在IR3上的那块8259A的最高优先级是IR5,试按优先级的顺序排列出各未被屏蔽的中断级,最高优先级在前。www.hackshp.cn解:优先级顺序为:主:IR0、IR1从2:IR0、IR1、IR2、IR3、IR4、IR5、IR6、IR7从3:IR5、IR6、IR7、IR0、IR1、IR2、IR3、IR4主:IR5、IR79、简单说明中断向量的概念,并指出8086/8088中断系统存放中断向量表的内存位置。如果对应于中断类型号为40H的中断处理子程序存放在1234H:5678H开始的内存区域中,则中断向量应如何存放?解:中断服务处理程序入口地址称为中断向量。8086/8088中断系统的中断向量表处于内存开始处00000H~003FFH单元的1K字节存储区里。最多可以容纳256个中断向量。从00100H单元开始顺序存放:78H,56H,34H,12H。khdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!10、假设8259A的地址为E0000H和E0001H,且系统中只有一片8259A,试画出它与系统总线的连接图。若允许外部中断源的上升沿触发中断,不需要缓冲,按一般全嵌套方式工作,中断向量号为40H,试编写此8259A的初始化程序。解:连接图如图所示。MOVDX,0E000HMOVAL,13HOUTDX,ALINCDXMOVAL,40HOUTDX,ALMOVAL,01Hkhdaw.comOUTDX,AL11、设已编写好类型码为0CH的中断服务程序为:…INT_ROUTPROCFAR…IRETINT_ROUTENDP请编写一段程序,实现该程序的中断矢量在中断矢量表中的装填。解:(1)MOVAX,0MOVES,AXMOVDI,0DH*4MOVAX课后答案网,OFFSETINT_ROUTCLDSTOSWMOVAX,SEGINT_ROUTSTOSW或者:www.hackshp.cn(2)PUSHDSMOVAX,SEGINT_ROUTMOVDS,AXMOVDX,OFFSETINT_ROUTMOVAH,25HMOVAL,0DHINT21HPOPDSkhdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!第九章计数器和定时器电路习题与答案1、8253主要由哪几个部分组成?解:数据总线缓冲器、读写控制电路、控制字寄存器以及三个计数器2、(1)8253内部有哪几个通道?简要说明CLK、OUT和GATE引脚的含义。(2)8253-5通道2工作于方式3,输入时钟频率为1MHz,OUT引脚输出周期为10ms的方波。已知通道0的口地址为3F0H,试编写初始化程序段。解:(1)8253内部有三个计数通道,计数器#0、#1、#2。CLK为时钟信号输入引脚,GATE为门控信号输入引脚,OUT引脚根据各种工作方式的不同,输出各种工作波形。khdaw.com(2)MOVAL,10010110BMOVDX,3F3HOUTDX,ALMOVAL,1000MOVDX,3F2HOUTDX,AL3、8253使用通道1,工作在方式2,要求产生2ms的定时中断,8253的CLK输入端的时钟周期为0.84µs,试写出初始化程序段。(假设端口地址为0FCH~0FFH)解:计算2ms对应的时间常数N=2mS/0.84µs=2×1000/0.84=2381=094DH初始化编程:课后答案网MOVAL,75HOUT0FFH,ALMOVAL,81HOUT0FDH,ALMOVwww.hackshp.cnAL,23HOUT0FDH,AL4、假设8253各端口的地址分别为40H一43H,若计数器0,OUT引脚输出1KHZ的连续方波信号;计数器1,每秒钟产生18.2次连续的方波信号;计数器2,每15.12µs,输出一次连续的单脉冲信号。CLK=1.19MHZ。对以上通道进行初始化编程。解:TC(计数周期)=1/1.19MHZ=0.84µs计数器0:N=1000/0.84=1190=04A6H计数器1:N=54900/0.84=65357=FF4DH计数器2:N=15.12/0.84=18=12H初始化编程:MOVAL,36H;通道0OUT43H,ALMOVAL,0A6HOUT40H,ALkhdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!MOVAL,04HOUT40H,ALMOVAL,76H;通道1OUT43H,ALMOVAL,4DHOUT41H,ALMOVAL,0FFHOUT41H,ALMOVAL,94H;通道2OUT43H,ALMOVAL,12Hkhdaw.comOUT42H,AL5、假设8253各端口的地址分别为40H一43H,CLK=1MHZ,若要计数器产生周期为1s的方波,请问使用一块8253如何达到目的?并写出初始化编程。解:在只用一个计数器的情况下。由于计数值:6N=1000000/1=10≥65536故可以采用计数器级联的方式实现题目的要求。级联方法:计数器0的CLK接1MHZ的时钟脉冲,计数值为1000,工作于方式3;再将计数器0的OUT接于计数器1的CLK端口。令计数器1也工作于方式3,计数值为1000,就可以在计数器1的OUT输出得到所需要的方波。初始化程序:MOVDX,43H课后答案网;初始化计数器0MOVAL,37HOUTDX,ALMOVAL,00MOVDX,40HOUTDX,ALwww.hackshp.cnMOVAL,10OUTDX,ALMOVDX,43H;初始化计数器1MOVAL,77HOUTDX,ALMOVAL,00MOVDX,41HOUTDX,ALMOVAL,10OUTDX,ALkhdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!第十章并行输入输出接口芯片8255A习题与答案1、通常并行接口应具有哪些功能?解:(1)两个或两个以上具有锁存器或缓冲器的数据端口;(2)每个数据端口都有与CPU进行联络的控制和状态信息,也有与外设交换信息所必须的控制和状态信息;(3)通常每个数据端口,还可用中断方式与CPU交换信息;(khdaw.com4)有片选和控制电路;(5)可通过编程达到选择端口、传送方向与CPU交换信息的方法等目的。2、8255A由哪几个主要部分组成?解:(1)数据端口A,B,C。而且每个端口都是8位;(2)A组和B组控制电路;(3)数据总线缓冲器;(4)读/写控制逻辑。3、8255A有哪些控制信号?各有何功能?解:课后答案网(1)CS——片选信号与A0,Al一起确定其端口地址;(2)RD——读信号,控制8255A送出数据或状态信息至CPU;(3)WR——写信号,控制CPU输出的数据或命令到8255A;(4)RESET——复位信号,清除控制寄存器和将所有端口设置成输入方式。www.hackshp.cn4、若8255A端口A工作在方式2(双向)。端口B能工作在哪种方式?解:方式0、方式1。5、若B口工作在方式1的输出状态时,应执行哪个操作,可禁止它产生中断请求信号?解:将C口的PC2置0。6、8255A工作在方式1和方式2时.C口哪些引脚负责中断允许或禁止?解:方式1:输入——A口为PC4B口为PC2输出——A口为PC6B口为PC2方式2:输入——PC4khdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!输出——PC67、假设8255A芯片起始端口地址为60H,编写指令序列,分别完成:(1)设置端口A组和B组都是方式0,其中端口B和C是输出口,A为输入口。(2)设置端口A组为方式2、B组为方式0且端口B为输出。(3)设置端口A组为方式1且端口A为输入、PC6和PC7为输出;设置端口B组为方式1且端口B为输入。解:(1)MOVDX,0063HMOVAX,0090HOUTDX,AX(2)MOVDX,0063HMOVAX,00D0Hkhdaw.comOUTDX,AX(3)MOVDX,0063HMOVAX,00B2HOUTDX,AX8、现要求用一个8255作为终端机的接口。由PA通道输出字符到终端机的显示缓冲器,PB通道用于键盘输入字符,PC通道为终端状态信息输入通道。当PC0=1表示键盘输入字符就绪,PC7=0表示显示缓冲器已空。要求用查询方法把从键盘输入的每个字符都送到终端机的显示缓冲器上,当输入的是回车符(ASCII码为0DH)则操作结束。已知控制字格式如下图所示,并假设该8255A芯片的端口地址为60H-63H。请编写包括8255初始化的输入输出驱动程序。解:课后答案网MOVAL,10001011BOUT63H,ALAGAIN1:INAL,62HTESTAL,01HJZwww.hackshp.cnAGAIN1AGAIN2:INAL,62HTESTAL,80HJNZAGAIN2INAL,61HOUT60H,ALCMPAL,0DHJNZAGAIN1khdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!第十一章串行通信及接口电路习题与答案1、串行通信有哪些特点?解:(1)需要的通信线少(通常为两条),特别适合于远距离传送;(2)传送速度较并行通信慢。2、串行通信方式有哪两种?解:异步通信与同步通信3、串行通信传送编码.主要有哪两种形式?解:(khdaw.com1)扩展的BCD交换码(2)ASCII码4、同步传送中CPU与外设有哪些规定?解:(1)字符格式:起始位、有效数据位(5-8位)—奇偶校验位—停止位(1-2位)(有一种还有空闲位);(2)波特率:常用为50—9600波特。5、串行通信在传送过程中,有哪几种方式?解:单工;半双工;全双工。6、同步传送与异步传送有何差别?解:课后答案网(1)同步传送的字符格式,仅在开始时使用同步字符(常用为2个),因而传送速度可达十——几百干波特;(2)同步传送需时钟来实现发送端与接收端之间的同步,故硬件较复杂;(3)异步速度比同步慢,硬件较同步简单一些。www.hackshp.cn7、8250内部结构,主要由哪几部分组成?解:(1)发送器,接收器部分:A、发送器;B、接收器;(2)通信控制和状态寄存器:A、LCR——串行通信的数据格式;B、LSR——通信线状态寄存器;(3)波特率发生控制电路(4)调制解调控制部分:A、调制解调控制寄存器MCR;B、调制解调状念寄存器MSR;(5)中断控制:A、中断识别寄存器IIR;khdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!B、中断允许寄存器IER;8、8250有哪些控制字?解:(1)通信线控制字(确定通信的数据格式);(2)中断控制字;(3)调制解调控制字(设置8250与通信设备之间联络应答的输出信号);(4)设置波特率的除数锁存器;(5)状态读出的控制字:A、通信线状态字;B、调制解调状态字。9、8250的初始化编程,有哪几个主要步骤?解:(khdaw.com1)为确定波特率设置除数锁存器(D7应为1);(2)对通信线控制寄存器编程确定通信的数据格式(D7应为);(3)若要使用中断,则应设置中断允许寄存器的状态;(4)设置调制解调控制寄存器。10、初始化编程应用:要求以波持率为9600进行异步通信,每个字符7位,1个停止位,1个奇偶校验位,允许所有中断,试进行初始化编程?假设:异步通信的端口地址为4E8~4EFH。解:初始化编程:MOVAL,80HMOVDX,4EBHOUTDX,ALMOVAL,0CH课后答案网MOVDX,4E8HOUTDX,ALMOVAL,0MOVDX,4E9HOUTDX,ALwww.hackshp.cnMOVAL,1AHMOVDX,4EBOUTDX,ALMOVAL,0FHMOVDX,4E9HOUTDX,ALMOVAL,0BHMOVDX,4ECHOUTDX,ALkhdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!第十二章D/A与A/DA/A/DD转换习题与答案1.什么叫分辨率?什么叫相对转换精度?答:分辨率:这个参数是D/A转换器对微小输入量变化的敏感程度的描述。用数字量的-n位数来表示,如8位、10位等。对于一个分辨率为n位的转换器,它能对刻度的2输入作出反应。相对转换精度:指满刻度已校准的情况下,在整个刻度范围内,对应于任一数码的模拟量输出与它的理论值之差。2.在T型电阻网络组成的D/A转换器中,设开关S0、S1、S2、S3分别对应一位二进制数,当二进制数据为1011时,流入运算放大器的电流为多少?以图8-1为例。答:I=[(20*D12n-1nkhdaw.com0+2*D1+2*D2+…+2*Dn-1)/2]*VREF/2R;I=13VREF/32R。3.用带两级数据缓冲器的D/A转换器时,为什么有时要用三条输出指令才完成16位或12位数据转换?答:当主机位数小于DAC芯片位数时,我们需要对连接方式作出调整。如果仍采用8位CPU,则被转换的数据必须分几次送出;同时,就需要多个锁存器来锁存分几次送来的完整的数字量。这种情况下,可采用双缓冲器结构。CPU输出时,先输出低8位给第一级锁存器(此时第二级锁存器不通),然后输出高4位给第一级锁存器。等这两者都输出后,再输出一个打开第二级锁存器的选通脉冲,把16位或12位数据输给D/A转换,这样可避免毛刺。如图:课后答案网4位锁存器4位锁存器12位模拟输出DACD0~D7www.hackshp.cn8位锁存器8位锁存器第一级低8位锁存控制LockPort1第一级高4位锁存控制LockPort2第二级12位锁存控制LockPort34.使用DAC0832进行数/模转换时,有哪两种方法可对数据进行锁存?答:单缓冲方式:LE1或LE2一直为高,只控制其中一级寄存器。第一种方法是使输入寄存器工作在锁存状态,而DAC寄存器工作在不锁存状态。使WR2和XFER为低电平,这样,DAC寄存器的锁存端得不到有效电平;另一方面khdaw.com,若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!使输入寄存器的有关控制信号中,ILE处于高电平,CS处于低电平。这样,当WR1端来一个负脉冲时,就可以完成一次变换。第二种方法是使输入寄存器工作在不锁存状态,而使DAC寄存器工作在锁存状态。使WR1为低电平,CS为低电平而ILE为高电平,这样,输入寄存器的锁存信号处于无效状态;另外,WR2和XFER端输入一个负脉冲,从而使DAC寄存器工作在锁存状态。双缓冲方式:不让LE1和LE2一直为高,控制两级寄存器。控制LE1从高变低,将从DI0~DI7输入的数据存入输入寄存器。控制LE2由高变低,则将输入寄存器的数据存入DAC寄存器,开始D/A转换。双缓冲方式能做到对某个数据进行D/A转换的同时,输入下一个数据,适用于要求多个模拟量同时输出的场合。5.设计一个电路和相应程序完成一个锯齿波发生器的功能,使锯齿波呈正向增长且锯齿波khdaw.com周期可调。电路如下:+5V+12VR220kR320kVCCVREFILED7D7D6D6D5D5RfbD4D4D3D3Iout1-D2D2R110k-D1D1+D0D0Iout2+UbUa-5V~+5V290HCS(0~5V)WRWR1XFERWR课后答案网2GND图8-6DAC与CPU的接口电路产生锯齿波只须将输出到DAC0832的数据由0循环递增,程序如下:MOVAL,0;初始值MOVwww.hackshp.cnAX,290H;D/A转换器的端口地址CYCLE:INCALOUTAX,CLJMPCYCLE;若无则转CYCLE上面程序在执行时得到的输出电压将为连续上升的锯齿波,我们可以利用延迟来调整锯齿波的周期。程序如下:MOVAL,0;初始值MOVDX,290H;D/A转换器的端口地址CYCLE:INCALOUTDX,AL;往D/A转换器输出数据CALLDELAYJMPCYCLE;若无则转CYCLEMOVCX,TIMES;TIMES为延迟常数DELAY:LOOPDELAYkhdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!RET6.什么叫模/数转换精度?什么叫转换率?什么叫分辨率?模/数转换绝对精度:指对应于一个给定的数字量的实际模拟量输入与理论模拟量输入之差。实际上对应于同一个数字量其模拟量输入不是固定值,而是一个范围。模/数转换相对精度:在整个转换范围内,任一数字量所对应的模拟输入量实际值与理论值之间的差。转换率:完成一次A/D转换所须的时间,在大多数情况下,转换率是转换时间的倒数。分辨率:这个参数是A/D转换器对微小输入量变化的敏感程度的描述。7.说明并行比较、双积分式和逐次逼近式A/D转换的工作原理。答:khdaw.com并行比较ADC由电阻分压器、比较器、缓冲器及编码器四部分组成。这种结构的ADC所有位的转换同时完成,其转换时间主要取决于比较器的开关速度、编码器的传输时间延迟等。双积分式ADC的基本原理是通过两次积分将输入的模拟电压转换成与其平均值成正比的时间间隔。与此同时,在此时间间隔内利用计数器对时钟脉冲进行计数,从而实现A/D转换。逐次逼近型ADC是应用非常广泛的模/数转换方法,它由比较器、D/A转换器、比较寄存器SAR、时钟发生器以及控制逻辑电路组成,将采样输入信号与已知电压不断进行比较,然后转换成二进制数。8.比较并行比较、双积分式和逐次逼近式A/D转换的优缺点。答:并行比较ADC特点增加输出代码对转换时间的影响较小,但随着分辨率的提高,需要高课后答案网密度的模拟设计以实现转换所必需的数量很大的精密分压电阻和比较器电路。积分型ADC两次积分的时间都是利用同一个时钟发生器和计数器来确定,其转换精度只取决于参考电压V。此外,由于输入端采用了积分器,所以对交流噪声的干扰有很强R的抑制能力。若把积分器定时积分的时间取为工频信号的整数倍,可把由工频噪声引起www.hackshp.cn的误差减小到最小,从而有效地抑制电网的工频干扰。这类ADC主要应用于低速、精密测量等领域,如数字电压表。其优点是:分辨率高,可达22位;功耗低、成本低。缺点是:转换速率低,转换速率在12位时为100~300sps。逐次逼近ADC的优点:高速,采样速率可达1Msps;与其它ADC相比,功耗相当低;在分辨率低于12位时,价格较低。缺点:在高于14位分辨率情况下,价格较高;传感器产生的信号在进行模/数转换之前需要进行调理,包括增益级和滤波,这样会明显增加成本。9.在实时控制和实时数据处理系统中,当需要同时测量和控制多路信息时,常用什么方法解决?答:以ADC0809为例,模拟输入部分提供一个8通道的多路开关和寻址逻辑,可以接入8个输入电压,由三位地址输入ADDA、ADDB、ADDC的不同组合来选择。我们可查询状态端口确定转换是否完成。当ADC0809工作在查询模式时,利用ADC0809芯片有8路模拟信号输入通道的多路开关,可以实现8个模拟信号的分时转换。khdaw.com若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!第十三章PentiumPePentiumntium微处理器习题与答案1、Pentium微处理器的BRDY引脚有何作用?解:BRDY信号用于通知Pentium微处理器数据已传输完毕,可用于向时序中插入等待状态。2、Pentium微处理器可以同时执行三条指令吗?为什么?解:可以。由于在Pentium处理器中内置了彼此独立的两条整型指令流水线和一条浮点指令流水线,因此系统能够在一个时钟周期内同时处理三条指令,只要他们不是相互依赖的。khdaw.com3、什么是Pentium的系统存储器管理工作模式?SMI中断时Pentium从哪里开始执行服务程序?解:系统存储管理模式是由Pentium处理器的存储器管理中断输入访问的一种特殊模式。SMI中断时Pentium从地址38000H开始执行服务程序。4、请简单描述Pentium微处理器如何访问4MB的页?解:Pentium微处理器通过使用页目录来访问4MB页,页目录存储4MB内存页的页基地址而不是页表地址。5、若总线周期指示信息M/IO#、D/C#、W/R#、CACHE#、KEN#为0111x,总线周期的类型课后答案网是什么?解:非缓存式I/O写总线周期。6、试描述下页图所示的总线周期操作:解:为流水线式读写周期,第一个总线周期为缓存式突发读操作,第二个总线周期为非缓存www.hackshp.cn式单次传送写操作。khdaw.com-1-若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com 课后答案网:www.hackshp.cn若侵犯了您的版权利益,敬请来信告知!khdaw.com课后答案网www.hackshp.cnkhdaw.com-2-若侵犯了您的版权利益,敬请来信通知我们!℡www.khdaw.com'