微机原理与接口技术习题答案

上传人:工**** 文档编号:508453413 上传时间:2022-10-14 格式:DOC 页数:12 大小:83.50KB
返回 下载 相关 举报
微机原理与接口技术习题答案_第1页
第1页 / 共12页
微机原理与接口技术习题答案_第2页
第2页 / 共12页
微机原理与接口技术习题答案_第3页
第3页 / 共12页
微机原理与接口技术习题答案_第4页
第4页 / 共12页
微机原理与接口技术习题答案_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《微机原理与接口技术习题答案》由会员分享,可在线阅读,更多相关《微机原理与接口技术习题答案(12页珍藏版)》请在金锄头文库上搜索。

1、第3章 8086/8088指令系统与寻址方式习题3 3 8086系统中,设DS=1000H,ES=2000H,SS=1200H,BX=0300H,SI=0200H,BP=0100H,VAR的偏移量为0600H,请指出下列指令的目标操作数的寻址方式,若目标操作数为存储器操作数,计算它们的物理地址。(1)MOV BX,12 ;目标操作数为寄存器寻址(2)MOV BX,12 ;目标操作数为寄存器间址 PA=10300H(3)MOV ES:SI,AX ;目标操作数为寄存器间址 PA=20200H(4)MOV VAR,8 ;目标操作数为存储器直接寻址 PA=10600H(5)MOV BXSI,AX ;目

2、标操作数为基址加变址寻址 PA=10500H(6)MOV 6BPSI,AL ;目标操作数为相对的基址加变址寻址 PA=12306H(7)MOV 1000H,DX ;目标操作数为存储器直接寻址 PA=11000H(8)MOV 6BX,CX ;目标操作数为寄存器相对寻址 PA=10306H (9)MOV VAR+5,AX ;目标操作数为存储器直接寻址 PA=10605H34 下面这些指令中哪些是正确的?那些是错误的?如果是错误的,请说明原因。(1)XCHG CS,AX ;错,CS不能参与交换(2)MOV BX,1000 ;错,存储器之不能交换(3)XCHG BX,IP ;错,IP不能参与交换(4)

3、PUSH CS(5)POP CS ;错,不能将数据弹到CS中(6)IN BX,DX ;输入/输出只能通过AL/AX(7)MOV BYTEBX,1000 ;1000大于255,不能装入字节单元(8)MOV CS,1000 ;CS不能作为目标寄存器(9)MOV BX,OFFSET VARSI ;OFFSET只能取变量的偏移地址(10)MOV AX,SIDI ;SI、DI不能成为基址加变址(11)MOV COUNTBXSI,ES:AX ;AX是寄存器,不能加段前缀37 设当前 SS=2010H,SP=FE00H,BX=3457H,计算当前栈顶的地址为多少?当执行 PUSH BX 指令后,栈顶地址和栈

4、顶2个字节的内容分别是什么?当前栈顶的地址=2FF00H当执行PUSH BX 指令后,栈顶地址=2FEFEH (2FEFEH)=57H (2FEFFH)=34H38 设DX=78C5H,CL=5,CF=1,确定下列各条指令执行后,DX和CF中的值。(1) SHR DX,1 ;DX=3C62H CF=1(2) SAR DX,CL ;DX=03C6H CF=0(3) SHL DX,CL ;DX=18A0H CF=1(4) ROR DX,CL ;DX=2BC6H CF=0(5) RCL DX,CL ;DX=18B7H CF=1 (6) RCR DH,1 ;DX=BCC5H CF=0;39 设AX=0

5、A69H,VALUE字变量中存放的内容为1927H,写出下列各条指令执行后寄存器和CF、ZF、OF、SF、PF的值。 AX CF ZF OF SF PF(1)XOR AX,VALUE ; 134EH 0 0 0 0 1(2)AND AX,VALUE ; 0821H 0 0 0 0 1(3)SUB AX,VALUE ; F142H 1 0 0 1 1(4)CMP AX,VALUE ; 0A69H 1 0 0 1 1(5)NOT AX ; F596H X X X X X (6)TEST AX,VALUE ; 0A69H 0 0 0 0 1310 设AX和BX中是符号数,CX和DX是无符号数,请分别

6、为下列各项确定CMP和条件转移指令。(1) CX值超过DX转移。(2) AX未超过BX转移。(3) DX为0转移。(4) CX值等于小于DX转移。(1) CMP CX,DXJA NEXT(2) CMP AX,BX JLE NEXT(3) CMP DX,0 JZ NEXT(4) CMP CX,DX JBE NEXT311 阅11 阅读分析下列指令序列:ADD AX,BXJNO L1JNC L2SUB AX,BXJNC L3JNO L4JMP L5若AX和BX的初值分别为以下5种情况,则执行该指令序列后,程序将分别转向何处(L1L5中的一个)。(1) AX=13C6H, BX=80DCH(2) A

7、X=0B568H,BX=54B7H (3) AX=42C8H, BX=608DH(4) AX=0D023H,BX=9FD0H(5) AX=9FD0H, BX=0D023H(1) 转L1(2) 转L1(3) 转L2(4) 转L5(5) 转L5 第四章 汇编语言程序设计习题45 画出下列语句中的数据在存储器中的存储情况。VARBDB 34,34H,GOOD,2 DUP(1,2 DUP(0)VARWDW 5678H,CD,$+2,2 DUP(100)VARCEQU 1222H34HGOOD10010078H56HDC12H00H64H0064HVARB VARW46 按下列要求,写出各数据定义语句。

8、(1) DB1为10H个重复的字节数据序列:1,2,5个3,4。(2) DB2为字符串STUDENTS(3) DB3为十六进制数序列:12H,ABCDH(4) 用等值语句给符号COUNT赋以DB1数据区所占字节数,该语句写在最后。 DB1DB 16 DUP(1,2,5 DUP(3,4) DB2DBSTUDENTS DB3DW 12H,0ABCDH COUNT EQU DB2DB1 48 对于下面的数据定义,各条MOV指令单独执行后,有关寄存器的内容是什么?PREPDB ?TABADW 5 DUP(?)TABBDB NEXTTABCDD 12345678H(1)MOV AX, TYPE PREP

9、 ;AX=1(2)MOVAX, TYPE TABA ;AX=2(3)MOVAX, LENGTH TABA ;AX=5(4)MOVAX, SIZE TABA ;AX=10(5)MOVAX, LENGTH TABB ;AX=1(6)MOVDX, SIZE TABC ;AX=4 410 若自STRING单元开始存放有一个字符串(以字符$结束);(1) 编程统计该字符串长度(不包含 $ 字符,并假设长度为两字节)。(2) 把字符串长度放在STRING 单元,把整个字符串往下移两个单元。 程序段为:(1)MOV SI,OFFSET STRINGXORBX,BXCONT:MOV AL,SICMPAL,$J

10、ZNEXTINCBXINCSIJMPCONTNEXT: MOV AH,4CHINT21H (2) STRING DB . $ COUNT EQU $-STRING : MOV SI,OFFSET STRING MOV CX,COUNT ADD SI,CX CONT: DEC SI MOV AL,SI MOV SI+2,AL LOOP CONT MOV CX,COUNT MOVSTRING,CX MOV AH,4CH INT21H411 将字符串STRING中的& 字符用空格代替,字符串STRING“The data is FEB&03”。程序为:DATASEGMENTSTRINGDB The

11、data is FEB&03COUNTEQU $-STRINGDATAENDSCODESEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV SI,OFFSET STRINGMOV CX,COUNTMOV AL,$CONT:CMP AL,SIJNZ NEXTMOV BYTE PTRSI, NEXT:INC SI LOOP CONTMOV AH,4CHINT21HCODEENDSENDSTART416 键盘输入十个学生的成绩,试编制一个程序统计6969分,7079分,8089分,9099分及100分的人数,分别存放到S6,S7,S8,S9及S10单元中。程序为: DATA SEGMENT BUFDB10 DUP(?) S6DB? S7DB? S8DB? S9DB? S

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 习题/试题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号