77范文网 - 专业文章范例文档资料分享平台

微型计算机原理课后答案(2)

来源:网络收集 时间:2018-12-20 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

XCHG 20H[BX][SI],AX ;(AX)=5678 H ,(09226H)=1234 H

17、若CPU中各寄存器及RAM参数如图所示,试求独立执行如下指令后,CPU及RAM相应寄存器及存储单元的内容是多少?

CPU RAM 执行前 执行后 CS 3000H FFFFH CX 20506H 06H 不变 DS 2050H 0004H BX 20507H 00H 不变 SS 50A0H 1000H SP 20508H 87H 不变 ES 0FFFH 17C6H DX 20509H 15H 不变 IP 0000H 8094H AX 2050AH 37H 94H DI 000AH 1403H BP 2050BH C5H 不变 SI 0008H 1 CF 2050CH 2FH 不变

(1)MOV DX,[BX+2] ;(DX)=0006H,(BX)=0004H (2)PUSH CX ;(SP)=0FFEH (3)MOV CX,BX ;(CX)=0004H,(BX)=0004H (4)TEST AX,01 ;(AX)=8094H,(CF)=0 (5)MOV AL,[SI] ;(AL)=87H (6)ADC AL,[DI] ;(AL)=0CCH,(CF)=0 DAA ;(AL)=32H (7)INC SI ;(SI)=0009H (8)DEC DI ;(DI)=0009H (9)MOV [DI],AL ;((DI))=94H (10)XCHG AX,DX ;(AX)=17C6H,(DX)=8094H (11)XOR AH,BL ;(AH)=84H,(BL)=04H (12)JMP DX ;(IP)=17C6H

18、(DS)=2000H,(BX)=1256H,(SI)=528FH,偏移量=20A1H,(232F7H)=3280H,(264E5H)=2450H,

试求执行下述指令后的结果。 (1) JMP BX ;(IP)=1256 H (2) JMP TABLE[BX] ;(IP)=3280 H (3) JMP [BX][SI] ;(IP)=2450 H

19、设(IP)=3D8FH,(CS)=4050H,(SP)=0F17H,当执行CALL 2000H:0094H后,试指出(IP)、(CS)、

(SP)、((SP))、((SP)+1)、((SP)+2)和((SP)+3)的内容。 CALL指令是5字节指令,下一条指令地址为4050H:3D94H 所以执行后 (IP)=0094H,(CS)=2000H、(SP)=0F13H ((SP))=94H,((SP)+1)=00H,((SP)+2)=00H,((SP)+3)=20H

20. 设(IP)=3D8FH,(CS)=4050H,(SP)=0F17CH,当执行:CALL 2000:0094H后,试指出(IP)、(CS)、(SP)、((SP))、((SP)+1)、((SP)+2)和((SP)+3)的内容。 (IP) = 0094H(CS)= 2000H(SP)= 0F178H 压4个字节进栈,- 4H ((SP))= 8FH

((SP)+1)= 3DH ((SP)+2)= 50H ((SP)+3)= 40H

第五章 汇编语言程序设计

1.画图说明下列语句所分配的存储空间及初始化情况。

(1)42H 59H 54H 45H 00H EEH 00H 07H 01H 02H 01H 02H 07H 00H 07H 01H 02H 01H 02H 07H 00H 07H 01H 02H 01H 02H 07H

(2)00H 00H 01H 00H 02H 00H 00H 00H 01H 00H 02H 00H 00H 00H 01H 00H 02H 00H 00H 00H 01H 00H 02H 00H 00H 00H 01H 00H 02H 00H 07H 00H FBH FFH 59H 42H 45H 54H 02H 56H 2.(PLENTH)=22H;它表示数据与的长度 3.(L)=06H

2.PLENTH的值为0022,它表示当前已分配单元空间; 3.L的值为6;

4. 假设程序中的数据定义如下:

LNAME DB 1,2,3,‘123’ ADDRESS DB 30 DUP(?) CTTY DB 15 DUP(?) CODE_LIST DB 1,7,8,3,2

(1)用一条MOV指令将LNAME的偏移地址放入BX

(2)用一条指令将CODE_LIST的头两个字节的内容放入SI

(3)写一条伪指令定义符使CODE_LENGTH的值等于CODE_LIST域的实际长度。

答案(1)MOV BX, OFFSET LNAME

(2)MOV SI,WORD PTR CODE_LIST (3)CODE_LENGTH EQU $ - CODE_LIST

5. 对于下面的数据定义,试说明三条MOV指令的执行结果。 TABLEA DW 10 DUP(?) TABLEB DB 10 DUP(?) TABLEC DB ‘123’

MOV AX,LENGTH TABLEA ;(AX)= 10 MOV BL,LENGTH TABLEB ;(BL)= 10 MOV CL,LENGTH TABLEC ;(CL)= 1

6.(1).(AX)=1 (2).(AX)=2 (3).(CX)=20 (4).(DX)=40 (5).(CX)=1 7.是说明下列指令中那些需要加上PR伪指令定义符。

(1).不需要(2)不需要(3)SUB [BX],WORD BYTE 2(或其他形式)(4).MOV CL,BYTE PTR WVAL 8.编一宏定义BXCHG,将一字节高4位和低4位交换。 BXCHG MARCO OPR MOV AL ,OPR MOV CL,04H ROL AH,CL ROR AL,CL OR AH , AL MOV OPR,AH ENDM

9.已知宏定义,展开宏调用:OPP BH,BL,CH,CL +MOV AX,BX +XCHG AL,CL +MOV AX,BL +XCHG AL,CH +MOV BL,AL

10.将寄存器中的16位数分成四组,每组四位,分别存放在AL,BL,CL和DL中。 MOV CH,04H MOV CL,AL MOV DL,AL SHR CL,CH AND DL,AH MOV AL,AH MOV BL,AH SHR AL,CH AND BL,0FH 或

MOV AX, 4A82H MOV DL,AH AND DL,0F0H MOV CL,4

SHR DL,CL PUSH AX

AND AH,0FH MOV BH,AH AND AL,0F0H MOV BL,AL MOV CL,4 SHR BL,CL MOV CL,BH POP AX

AND AL,0FH

11. data segment

string1 db 'I am a student.' string2 db 'I am a student .' yes db 'match',0dh,0ah,'$' no db 'no match',0dh,0ah,'$'

data ends

code segment

assume cs:code,ds:data,es:data start: push ds

sub ax,ax push ax mov ax,data mov ds,ax mov es,ax lea si,string1 lea di,string2

mov cx,string2-string1 cld

repe cmpsb jnz dispno mov ah,9 lea dx,yes int 21h jmp exit dispno: mov ah,9 lea dx,no int 21h

exit: MOV AH,4CH INT 21H code ends

11.试编写一程序,要求比较两个字符串STRING1和STRING2所含字符是否相同,若相同则显示MATCH,若不相同则显示NOMATCH. 解:DATA SEGMENT

STRING1 DB ‘ABCDE’ STRING2 DB ‘ABCDEF’ MESG1 DB ‘MATCH$’ MESG2 DB ‘MATCH$’ DATA ENDS STACK SEGMENT

BUF DB 100DUP(?) STACK ENDS

CODE SEGMENT MAIN PROC FAR START:PUSH DS MOV AX,0 PUSH AX PUSH ES

MOV AX,DATA

MOV DS,AX

MOV AL,STRING1 MOV CL,6

MOV SI,OFFSET STRING1 MOV DI,OFFSET STRING2 CLD

REPE CMPSB JZ ALLMATCH

MOV DX OFFSET MESG2 MOV AH,9 INT 21H RET

ALLMATCH: MOV DX OFFSET MESG1

MOV AH 9 MOV 21H RET

MAIN ENDP CODE ENDS

END START

13.编写程序,将一个包含有20个数据的数组M分成两个数组,正数组P和负数组N,分别把这两个数组中的数据的个数显示出来。 解:DATA SEGMENT

M DB 1 ,2,3,4,5,6,7,8,9,10

DB -1,-2,-3,-4,-5,-6,-7,-8,-9,-10

P DB 20DUP(?)

N DB 20DUP(?)

DATA ENDS CODE SEGMENT MAIN PROC FAR START:PUSH DS MOV AX,0 PUSH AX MOV AX,DATA MOV DS,AX MOV AL,0

MOV SI OFFSET M MOV CX 20H

LOOP1: MOV BL,M[SI]

CMP AL,M[SI JAE LOOP2 MOV N,BL

INC SI

CMP CX,20H JZ LOOP3 JMP LOOP1

LOOP2: DEC CX

MOV P, BL INC SI

CMP CX,20H JZ LOOP3 JMP LOOP1

LOOP3: MOV DX,OFFSET P

MOV AH,9

INT 21H

MOV DX,OFFSET N MOV AH, 9 INT 21H

RET

MAIN ENDP CODE ENDS

END START 13. DATA SEGMENT

M DB 11H,22H,33H,44H,64H,87H,34,29,67H,88H,0F6H DB 43H,0B7H,96H,0A3H,233,56H,23H,56H,89H C EQU 20 P DB 20 DUP(?) N DB 20 DUP(?)

PLUS DB 'PLUS',0DH,0AH,'$' MINUS DB 'MINUS',0DH,0AH,'$' J DB 2 DUP(?) DATA ENDS

CODE SEGMENT ASSUME CS:CODE, DS:DATA START: MOV AX,DATA MOV DS,AX LEA SI,M LEA DI,P LEA BX,N MOV CX,C MOV DX,0 LOOP1: LODSB TEST AL,80H

JNZ MINUS1 ;负数转移 MOV [DI],AL INC DI

INC DH ;存正数个数 JMP AGAIN

MINUS1: MOV [BX],AL INC BX INC DL ;存负数个数 AGAIN: DEC CX

JNZ LOOP1

MOV WORD PTR J,DX ;存结果 MOV DX,OFFSET MINUS MOV AH,9

INT 21H ;显示提示信息 MOV BL,J MOV CH,2 ROTATE: MOV CL,4 ROL BL,CL MOV AL,BL AND AL,0FH ADD AL,30H CMP AL,3AH JL POR ADD AL,7 POR: MOV DL,AL MOV AH,2 INT 21H DEC CH JNZ ROTATE ;十六进制形式输出负数个数 MOV AH,2 MOV DL,0DH INT 21H MOV DL,0AH INT 21H

MOV DX,OFFSET PLUS MOV AH,9 INT 21H

MOV DH,J+1 MOV CH,2 ROTATE1: MOV CL,4 ROL DH,CL MOV AL,DH AND AL,0FH ADD AL,30H CMP AL,3AH JL POR1 ADD AL,7 POR1: MOV DL,AL MOV AH,2 INT 21H DEC CH JNZ ROTATE1 MOV AH,4CH INT 21H CODE ENDS END START

16. 数据段中已定义了一个有n个字数据的数组M,试编写程序求出M中绝对值最大的数,把它放在数据段的M+2n单元中,并将该数的偏移地址存放在M+2(n+1)单元中。 DATA SEGMENT n EQU 6

M DW -66, 33, 55, -89, 28, 311 DW ? DB ? DATA ENDS START:

MOV AX, DATA MOV DS, AX LEA BX, M

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库微型计算机原理课后答案(2)在线全文阅读。

微型计算机原理课后答案(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/377712.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: