微机原理 第4章 作业

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第4章习题与思考题

1、编写8086汇编语言程序,将寄存器AX的高8位传送到寄存器BL,AX的

低8位传送到寄存器DL。

答:CODE SEGMENT

ASSUME CS:CODE

START:MOV BL,AH

MOV DL,AL

CODE ENDS

END START

2、将DX寄存器的内容从低位到高位的顺序分成4组,且将各组数分别送到寄

存器AL、BL、CL和DL。

答:MOV AH,DL ;取DL 低4位送AL

AND AH,0FH

MOV AL,AH

SHR DL,1 ;DL高4位逻辑右移4位送BL

SHR DL,1

SHR DL,1

SHR DL,1

MOV BL,DL

MOV AH,DH ;取DH 低4位送CL

AND AH,0FH

MOV CL,AH

SHR DH,1 ;DH高4位逻辑右移4位送DL

SHR DH,1

SHR DH,1

SHR DH,1

MOV DL,DH

HLT

3、判别MEM单元的数据,编程将奇数存入MEMA单元,将偶数存入MEMB

单元。

答:MOV AL,MEM

TEST AL,00000001B

JZ OS ;偶数转OS

MOV MEMA,AL

HLT

OS:MOV MEMB,AL

HLT

4、试统计9个数中偶数的个数,并将结果在屏幕上显示。

答:

DATA SEGMENT

MESS1 DB “THE NUMBER OF EVEN NUMBERS:$”

MEM DB 9 DUP(?);统计对象共9个

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START:MOV AX,DATA

MOV DS,AX

MOV AH,09H

MOV DX,OFFSET MESS1

INT 21H ;屏幕显示THE NUMBER OF EVEN NUMBERS:

MOV CX,9 ;设置循环此数

MOV AH,0 ;AH存放统计的偶数个数

LEA SI,MEM

NEXT:MOV AL,[SI]

TEST AL,00000001B

JNZ QS ;奇数转QS

INC AH ;是偶数AH增1

QS:INC SI

LOOP NEXT

MOV DL,AH ;统计结束,开始显示

ADD DL,30H ;转ASCⅡ码

MOV AH,02H

INT 21H ;屏幕显示统计个数CODE ENDS

END START

相关文档
最新文档