ImageVerifierCode 换一换
格式:DOCX , 页数:38 ,大小:69.81KB ,
资源ID:11774768      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-11774768.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(微机原理与接口技术项目决战参考答案.docx)为本站会员(b****3)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

微机原理与接口技术项目决战参考答案.docx

1、微机原理与接口技术项目决战参考答案项目一一、选择题1A 2B 3A 4D 5D 6C 7C 8B二、填空题1控制器 运算器 2计算机的中央处理单元,负责解释和执行指令 主存 总线 输入 输出设备 3 2三、计算题1 数制和码制转化(1)189.1875 275.14 BD.3 (2)1111 0111 F7 367(3)11 1011 1100 1101 0010 736322 244946(4)110 00002FFH;5AH(正数)或A6H(负数,最高位为符号位)3如果用X补(9F)16来求解,要考虑正数和负数。4(1)无溢出(2)无溢出(3)无溢出(4)有溢出,结果错四、问答题141 6

2、1 1B 10 1D F2ASC码的首位为0,而汉字编码的首位为1。汉字编码,以GB2312码为例,是以两个ASCII字符为一个汉字编码,而且用的都是ASCII中扩展字符集中的编码组成,如果内码与当前程序使用的解码不一致,文字就不能正常显示,而显示成回ASCII的形式,这种情况称为乱码。3中央处理器cpu包括运算逻辑部件、寄存器部件和控制部件。中央处理器从存储器或高速缓冲存储器中取出指令,放入指令寄存器,并对指令译码。它把指令分解成一系列的微操作,然后发出各种控制命令,执行微操作系列,从而完成一条指令的执行。4微型计算机由运算器、控制器、存储器、输入设备和输出设备五大部分组成。5系统软件:是软

3、件的基础,所有应用软件都要在系统软件上运行。Windows系列:windows2000、windows XP、windows7、Dos、Linux Unix 等;应用软件:能够实现某种特定任务的软件,例如:office系列 金山WPS 杀毒软件 工具软件等项目二一、选择题1A 2D 3A 4D 5C 6D 7C 8D 9C 10C 11D 12D 13D 14D 15A 16A 17C 18B 19D 20D二、填空题1负责完成CPU与存储器或I/O设备间的数据传送;执行命令 2 CF PF AF ZF SF OF 3取指令、译码、读写操作数三、计算题1物理地址=32000H,可参阅图2.14

4、。2 (1)MOV AX, 1024H ;直接寻址,数据段,11024H(2)MOV AX, TABLE ;直接寻址,数据段,10500H(3)MOV AX, 100HBX ;基址寻址,数据段,10300H(4)MOV AX, TABLEBPSI ;相对基址加变址,数据段,10900H(5)MOV AX, 1234H ;立即寻址 (6)MOV AX,ES:1234H ;直接寻址,附加数据段,11234H(7)MOV AX, 10HEAX ;基址寻址,数据段,10410H(8)MOV AX, 10HEAX*2 ;变址寻址,数据段,10810H(9)ADD AL, EAXSI ;基址变址寻址,数据

5、段,10500H(10)SUB EAX, TABLBP ;基址寻址,SS段,10900H四、程序分析1已知DS=1300H, AX=1234H, BX=1200H, CX=01BCH, SI=0020H, DI=0032H,存储单元(14281H)(14280H)=0A426H, (14235H)(14234H)=3000H, (14233H)(14232H)=0634H, (14233H)(14232H)=0634H,(14231H)(14230H)=5678H, 下列各程序段执行结果如何?(1) LEA BX, 50HBXSI ;传送的是有效地址,BX=1270H MOV AX, 10HB

6、X ;物理地址=14280H,AX=0A426H,(2) XCHG CX, 30HBX ;交换指令,CX=5678H,(14281H)(14280H)=01BCH XCHG 50HBXSI, AX ;交换指令,AX=0634H,(14271H)(14270H)=1234H2已知SS=1234H, SP=00B0H, 执行下列指令后,试指出SP和CX的值,并绘出堆栈区数据变化图。 CX=0F80H;SP=00AEH;变化图可参阅图2-15。3已知AL=93H, CF=1,试指出下列每条指令执行后CF、ZF、SF、PF和AF的状态。(1)MOV AL, 50H ;数据传送,CF、ZF、SF、PF和

7、AF不受影响(2)ADD AL, 80H ;CF=1,ZF=0,SF=0,PF=0,AF=0(3)SUB AL, 0A0H ;CF=1,ZF=0,SF=1,PF=1,AF=0(4)ADC AL,0F8H ;CF=1,ZF=0,SF=1,PF=0,AF=0(5)SBB AL, 18H ;CF=1,ZF=0,SF=0,PF=0,AF=0(6)INC AL ;CF=1,ZF=0,SF=1,PF=0,AF=0,该指令不影响CF(7)DEC AL ;CF=1,ZF=0,SF=1,PF=0,AF=0,该指令不影响CF(8)NOT AL ;不影响标志位(9)AND AL,80H ;影响PF、SF和ZF标志位

8、(10)OR AL, 0FH ;影响PF、SF和ZF标志位4以下程序段执行后AX寄存器的值是多少?MOV AX, 0008H ;AX=0008HADD AL, 09H ;0011HAAA ;AX=17,参阅44页5已知AX和BX中为有符号数,试问在什么条件下执行以下各条指令后,程序转向不同的目标地址? ADD AX, BX JO PROG1 ;OF=1时,转移 JNC PROG2 ;AB时,转移 JS PROG3 ;SF=1时,转移 JNZ PROG4 ;ZF=0时,转移 JMP PROG5 ;无条件跳转五、程序编写1按要求编制程序段(1)将AX寄存器的低四位置0;AND AX,0FFF0H(

9、2)将EBX的高8位和低8位交换;XCH BH,BL(3)将CX的内容乘以16;CX左移4次或者将CX内容导入其他寄存器,利用CX做数据寄存器,移动,再返回数据。程序段如下:MOV AX,CXMOV CX,4SAL AX,CL ;左移4次MOV CX,AX(4)将数据段中偏移地址为2000H中所存字传送到BX中。MOV BX,2000H2使用查表指令将09转换成ASCII码。解:程序段如下:DATA SEGMENTTABLE DB 30H,.39H;10个数,注意这里没有显示,;如果要显示,或者要每个显示出来,需要参阅例3-9LEA BX,TABLEMOV AL,06H ;假设为06号元素XL

10、AT3AX、BX和CX中为有符号的16位二进制数,现要求求出最大值,并存储在MAX单元中,试编写程序段。解:程序段如下:CMP AX,BXJGE NEXT ;AXBX,转移XCHG AX,BX ;否则,数据交换,AX中存的是大数NEXT: CMP AX,CX ;AX与CX比较 JGE DONE ;AXCX,转移 XCHG AX,CXDONE: MOV MAX,AX ;最大值存入MAX中4100个有符号的16位二进制数存储在以BLOCK为首地址的存储区中,现要求将其中的正数和负数分开,并分别存储在以POSI和MINU为首地址的存储区中,试编写程序段。解:注意:该程序是比较的字,所以SI每次要加2

11、。程序参考如下:DATA SEGMENT NUM EQU 100 ;定义计数器定义100个数 BLOCK DW NUM DUP(?) ;定义100个随机数 MINUS DW 100 DUP(?) ;开放数据空间 POSI DW 100 DUP(?)DATA ENDSCODE SEGMENTASSUME CS:CODE, DS:DATASTART: MOV AX,DATAMOV DS,AXMOV SI,0 ;定位单元起始地址MOV CX,NUM ;将100送入计数器L1: MOV AX,BLOCK SI ;从第一个数据开始TEST AX,8000HJZ NEXT1 ;ZF=1,说明为正数,转移M

12、OV MINUSSI,AX ;否则,为负数,存储JMP PASS1NEXT1: MOV POSISI,AX PASS1: INC SI INC SILOOP L1MOV AH,4CHINT 21HCODE ENDSEND START5试编写一汇编程序段,使之实现:在100个字符的数据串BLOCK中搜索字符“K”, 若有,则将OK单元置1,否则置0。解:LEA DI,BLOCK ;目标字符串首地址送DIMOV BX,DI ;首地址暂存BXMOV CX,100 ;串长度送CXMOV AL,K ;关键字符K的ASC码送ALCLD REPNZ SCASB ;扫描字符串,直到找到字符K或CX=0JZ F

13、OUND ;若找到,则转移MOV OK,0 ;没找到要搜索的关键字,使存储单元OK为0JMP DONEFOUND: MOV OK,1 HLT项目三一、选择题 1 A 2 D 3 C 4 B 5 A二、填空题1 机器的低级程序设计 编译连接程序 2分支 循环三、按要求完成下列题目1给出下列语句中,求出指令立即数(数值表达式)的值:(1)MOV AL, 21H AND 56H OR 0AH;先AND,再OR,AX=0AH(2)MOV AX, 14ABH/16+1200H;先右移4位,再加,AX=134AH(3)MOV AX, 23H SHL 4;左移4位,AX=0230H2画图说明下列语句分配的存

14、储空间及初始化的数据值:(1)BYTE_VAR DB ABCD, 10, 10H, 11000011B, 2DUP(1,?,5DUP(2))(2)WORD_VAR DW 20H, 20,5, 2DUP (?)该题目参阅例3.3,注意分清字节、字的存储单元。3请设置一个数据段,按照以下要求定义变量:(1)BYTE_VAR1为字符串变量,表示字符串“MY PC”BYTE_VAR1 DB MY PC(2)BYTE_VAR2为用十进制数表示的字节变量,这个数的大小为20BYTE_VAR2 DB 20;注意,这里是字节变量,而不是赋值,下同(3)BYTE_VAR3为用十六进制数表示的字节变量这个数的大小

15、为20BYTE_VAR3 DB 14H(4)BYTE_VAR4为用二进制数表示的字节变量,这个数的大小为20BYTE_VAR4 DB 10000100B(5)WORD_VAR为20个未赋值的自变量WORD_VAR DW 20 DUP(?)(6)CHANGL_1为100的符号常量CHANGL_1 EQU 100(7)CHANGL_2为字符串常量。代替字符串“PERSINAL COMPUTER”?CHANGL_2 EQU 四、程序填空1XOR AH,AL JZ ZERO 2CMP AL, BX JNZ LOP1五、编制程序题1编定程序段,用DOS的1号功能调用通过键盘输入一字符,并判断输入的字符。

16、如果字符是“Y”,则转向YES程序段;如字符是“N”,则转向NO程序段;如是其他字符,则转向DOS功能调用,重新输入字符。YES和NO作为两程序段入口处的标号。 解:参考程序如下:CODE SEGMENT ASSUME CS:CODE BEGIN: MOV AH,01h INT 21H CMP AL,Y JZ YES CMP AL,N JZ NO JMP BEGIN YES: . . NO:. . . MOV AH,4CH INT 21H CODE ENDS END BEGIN2在BUF1和BUF2两个数据区中,各定义有10个带符号字数据,试编制一完整的源程序,求它们对应项的绝对值之和,并将和

17、数存入以SUM为首址的数据区中。解:参考程序如下:DATA SEGMENT BUF1 DW -56,24,54,-1,89,-8, BUF2 DW 45,-23,124,345,-265, SUM DW 10 DUP(0) DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV CX,20 ;计数器,循环20次LEA SI,BUF1 ;获取偏移地址LEA DI,SUM PUSH SI M1: MOV AL,SI MOV AH,SI+1 AND SI,80H JZ M3 ;结果为0,说明是正数,转移XOR AX,OFFFFH ;否则,取绝

18、对值,也可以用neg指令ADD AX,1 MOV SI,AL ;绝对值,放回原变量中MOV SI+1,AH M3: INC SI ;指向下一个数据INC SI LOOP M1 ;将这20个数存放在BUF1开始的缓冲区中POP SI MOV CX,10 M2: MOV AL,SI MOV AH,SI+1 ADD AL,SI+20 ADD AH,SI+21 MOV DI,AL MOV DI+1,AHINC SIINC SIINC DIINC DILOOP M2 CODE ENDS END START3编写一个程序,把从键盘输入的小写字母用大写字母显示出来。解:参考程序段如下:NAME TURNDA

19、TA SEGMENTA DB PLEASE INPUT (az):,$B DB 0AH,0DH,$DATA ENDSSTACK1 SEGMENT STACKDB 90H DUP(?)STACK1 ENDSCODE SEGMENTASSUME CS:CSEG,DS:DSEG,SS:SSEGSTART: MOV AX,DATAMOV DS,AXMOV DX,OFFSET A ;提示输入MOV AH,09HINT 21HMOV AH,01H ;从键盘输入字符,存放在AL中INT 21HMOV BL,AL ;转移至BL中,进行转换SUB BL,20H ;转换MOV DX,OFFSET B ;回车,换行

20、MOV AH,09HINT 21HMOV DL,BLMOV AH,02INT 21H ;输出MOV AH,4CHINT 21H ;结束CODE ENDSEND START4编写程序,当从键盘输入一个数时,根据下面函数关系计算出函数值,并显示出来。Y 该题修订一下,第三个改为5,使题目简单一点。注意:假设从键盘输入的就是数字,1位数。否则,还要进行数据、字符的判断及位数处理。解:程序段如下:MOV AH,01HINT 21HCALL CUR_OFF ;调用子程序,见P51例2-59SUB AL,30H ;变成十进制数值MOV BL,ALCMP BL,0H ;和0比较JGE MULS3 ;AL0,

21、跳转ADD BL,BL ;BL=2XJMP DONEMULS3: CMP BL,05H JG MULS4 ADD BL,BL ADD BL,AL ;BL=3X JMP DONEMULS4: ADD BL,BL ADD BL,BL ;BL=4XDONE: MOV AL,BL AND AL,F0H ;屏蔽低四位 MOV CL,4 SAR AL,CL ADD AL,30H ;转换为ASCII码 MOV AH,02H MOV DL,AL INT 21H MOV AL,BL AND AL,0FH ;屏蔽高4位 ADD AL,30H MOV DL,AL MOV AH,02H INT 21H5 在BUF单元

22、开始的10个字单元中存放着10个4位压缩BCD码数,求BCD和,结果存放在RESULT开始的3个字单元中。要求用子程序完成两个4位压缩BCD码数的相加,并且低位存放在前,高位存0放在后。 解:参考例题3-22,基本一样。项目四一、选择题1 A 2C 3C 4 D 5A 6B 二、填空题1时钟周期 2锁存器 数据收发器 3 片内总线 局部总线 系统总线 通信总线 通信总线 4主频 1000ns 5线选译码 、部分译码 6 32个存储器 11位 4位 7 FFFFH 三、简答题1 写总线周期 读总线周期2 参阅图2-1地址总线(AB) 数据总线(DB) 控制总线(CB)3 存储器容量、存储周期、制

23、作工艺4 目前,每一个集成片的存储容量终究是有限的,所以需要一定数量的芯片按一定方式进行连接才能组成一个完整的存储器。在地址选择时,首先要选片。只有当片选信号有效时,才能选中某一片,使此片所连的地址线有效,这样才能对这一片的存储元进行读写操作。 至于是读还是写,取决于CPU所给的命令是读命令还是写命令。加快运算速度,调节主板与CPU工作问题5 半导体存贮器与CPU的连接应注意:速度的配合;相应控制信号的连接; CPU总线的负载能力。四、分析设计题 1一个具有14位地址8位数据线的存储器,能存储多少字节数据,若由8K4的芯片组成,共需多少芯片?解: 16K字节 4个芯片;算法参阅课本。2用16K

24、8的ROM为8088 CPU扩展外部64K8的ROM,其地址范围为40000H4FFFFH,采用74LS138进行译码,写出详细设计过程并画出电路图。解: (1)计算所需芯片数四个(2)地址分配与片选逻辑(3)连接芯片。 注意地址是从40000H到4FFFFH,因此A19A18=01,ROM有14根地址线,可以和CPU的14根地址线相连。而余下的A17A16A15A14四根地址线就应该作为片选端。A16A15A14可分别与CBA相连,A18与E3相连,A19A17与E1E2相连。图略。项目五一、选择题1 A 2 C 3C 4D 5D 6 D 7 D 8C 9D 10B二、填空题1 控制 2状态

25、寄存器 控制寄存器 3 连接CPU与外设之间的部件 能传输信号,提供缓冲,满足接口两边的时序4 空闲周期和有效周期 单字节、数据块、请求传送、级连方式三、简答题1答: 因为外设的速度大多都比较慢,而计算机内部的速度都比较快,为了弥补速度差,引入了接口。接口就相当于一个缓冲区,它能暂存一些数据(外设一般采用串行,等有一定量的数据,再一起并行传给主机,或接口处理机),从而达到主机跟外设之间的串-并转换,提供主机的工作效率。cpu的速度很快,而外设的速度很慢,为了协调这两者,就出现了接口。2可参阅144页,主要有:1)转换信息格式,如串并行数据转换。2)提供CPU与外设之间的信号联络,如应答信号。3

26、)对传输的数据进行缓冲或锁存,以协调CPU与外设之间数据传送速度上的差异。4)有片选和片内端口地址选择,以便CPU能同指定外设的指定端口进行信息传送。5)实现电平和正负逻辑转换,使CPU与外设在电气特性上相匹配。6)接收CPU写来的控制字,向CPU提供状态信息,实现中断管理。7)对I/O端口进行寻址,提供时序控制。3 可参阅145页、146页,独立编址和统一编址:或者如下回答:独立编址(专用的I/O端口编址)-存储器和I/O端口在两个独立的地址空间中I/O端口的地址码较短,译码电路简单,存储器同I/O端口的操作指令不同,程序比较清晰;存储器和I/O端口的控制结构相互独立,可以分别设计统一编址(

27、存储器映像编址)-存储器和I/O端口共用统一的地址空间,当一个地址空间分配给I/O端口以后,存储器就不能再占有这一部分的地址空间。优点:不需要专用的I/O指令,任何对存储器数据进行操作的指令都可用于I/O端口的数据操作,程序设计比较灵活;由于I/O端口的地址空间是内存空间的一部分,这样,I/O端口的地址空间可大可小,从而使外设的数量几乎不受限制4数据、状态、控制;数据口、状态口、控制口。5无条件传送方式,也称同步传送方式。传送前,CPU不需要了解端口的状态,直接进行数据的传送。 8255方式0、DAC;查询传送方式,也称为异步传送方式。8255方式1、ADC;中断方式 8259、8255方式1

28、、2DMA方式8237无条件传送通常用在可靠性要求不高的同步或开放性场合6 程序查询模式:检查条件及处理要占用CPU时间。中断模式:检查条件不占CPU时间,满足条件时进入中断子程,所以处理不占CPU时间。该模式主要用于处理事件或事务。中断控制方式虽然在某种程度上解决了占用CPU的问题,但由于中断次数多,因而CPU仍需要花较多的时间处理中断,而且能够并行操作的设备台数也受到中断处理时间的限制,中断次数增多导致数据丢失。DMA方式较好地解决了上述问题。这两种方式采用了外设和内存直接交换数据的方式。只有在一段数据传送结束时,这两种方式才发出中断信号要求CPU做善后处理,从而大大减少了CPU的工作负担。四、程序编写1CPU与外设采用查询方式传送数据的过程是怎样的?现有一输入设备,其数据端口的地址位为FFE0H,并于端口FFE2H提供状态,当其D0位为1时表明输入设备好。请编写采用查询方式进行数据传送的程序段,要求从该设备读取100B并输入到2000H:2000H开始的主存中。程序段如下:MOV AX,2000H

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2