微机原理及接口技术-习题答案汇编

学习-----好资料

20. 编写程序段,把内存中首地址为MEM1的200个字节送到首地址为MEM2的区域。

解: MOV AX,SEG MEM1

MOV DS,AX ;设定源串段地址 MOV AX,SEG MEM2 MOV ES,AX ;设定目标串段地址 MOV SI,0 ;设定源串偏移地址 MOV DI,0 ;设定目标串偏移地址 MOV CX,200 ;串长度送CX CLD ;(DF)=0,使地址指针按增量方向修改 REP MOVSB ;每次传送一个字节,并自动 HLT

21. 编写程序段,以4000H为起始地址的32个单元中存有32个有符号数,统计其中负数的个数,并将统计结果保存在BUFFER单元中。 解:START: MOV DI,OFFSET BUFFER

XOR AL,AL MOV [DI],AL MOV SI,4000H MOV CX,32 AA: MOV AL,[SI] OR AL,AL JNS X1 INC [DI] X1: INC SI NEXT:LOOP AA HLT

更多精品文档

学习-----好资料

第四章习题及答案

1. 什么叫汇编?汇编语言源程序的处理过程是什么?

解:任何CPU都只能执行机器语言程序。汇编语言不是机器语言,汇编语言程序必须通过具有“翻译”功能的系统程序的处理,处理的过程称为汇编。

汇编语言源程序经过汇编生成机器语言目标程序,简称目标程序。目标程序经过连接程序连接,就得到可执行的机器语言程序文件。

2. 汇编语言的语句类型有哪些?各有什么特点?

解:汇编语言的语句类型有两种:指示性语句和指令性语句。指示性语句可以位于任何段中,指令性语句必须位于代码段内。 ? 指示性语句

又称为伪操作语句,它不是8088/8086CPU的指令,它与汇编程序(assembler)有关。指示性语句的功能主要是变量定义、为数据分配存储空间、告诉汇编程序如何对源程序汇编等。源程序汇编后指示性语句不生成目标代码,所以常被称为伪指令。 ? 指令性语句

指令性语句是可执行语句,是8088/8086CPU的指令。源程序汇编后指令性语句生成目标代码。第3章中介绍的所有指令都是指令性语句的主体,其操作数最多只能有两个。

3. 汇编语言源程序的基本结构是什么?

解:汇编语言源程序由若干段组成:数据段、附件数据段、堆栈段和代码段等,段与段之间的顺序可以随意排列,每一段由SEGMENT开始,以ENDS结束,每段的开始和结束都附有相同的名字。一个程序一般定义三个段:数据段、堆栈段和代码段,必要时增加定义附加数据段,能独立运行的程序至少包含一个代码段。

4. 写出完成下述要求的变量定义的语句:

(1) 为缓冲区BUFF保留200个字节的内存空间 (2) 将字符串’BYTE’,’WORD’存放于某数据区

(3) 在数据区中存入下列5个数据:2040H,0300H,10H,0020H,1048H 解:

(1)为缓冲区BUFF保留200个字节的内存空间

BUFF DB 200 DUP(?)

(2)将字符串’BYTE’,’WORD’存放于某数据区

DB ‘BYTE’,’WORD’

(3)在数据区中存入下列5个数据:2040H,0300H,10H,0020H,1048H DW 2040H,0300H,10H,0020H,1048H

更多精品文档

学习-----好资料

5. 画出下面数据段汇编后的内存图,并标出变量的位置。 DATA SEGMENT

AA EQU 78H

AA0 DB 09H,-2,45H,2 DUP(0

>>展开全文<<
12@gma联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4