微型计算机第三,四章课后答案和题目!很全面.doc

上传人:laozhun 文档编号:4123409 上传时间:2023-04-06 格式:DOC 页数:4 大小:24.50KB
返回 下载 相关 举报
微型计算机第三,四章课后答案和题目!很全面.doc_第1页
第1页 / 共4页
微型计算机第三,四章课后答案和题目!很全面.doc_第2页
第2页 / 共4页
微型计算机第三,四章课后答案和题目!很全面.doc_第3页
第3页 / 共4页
微型计算机第三,四章课后答案和题目!很全面.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《微型计算机第三,四章课后答案和题目!很全面.doc》由会员分享,可在线阅读,更多相关《微型计算机第三,四章课后答案和题目!很全面.doc(4页珍藏版)》请在三一办公上搜索。

1、3.53 在以DS:3301H为首地址的存储单元中,连续存放了50个无符号的字节数据,要求在其中找出最小值,并将它放在地址为DS:3300H的字节单元中。试编写程序。解:CODE SEGMENT ASSUME CS:CODESTART: MOV SI,3301H ;将首地址送给SI,用SI可以间接访问数组中的元素 MOV AL,SI ;将第一个数送给AL MOV CX,49 ;50个数比较49次CYCLE: INC SI ;让SI指向下一个数 CMP AL,SI JBE NEXT ;ALSI,则用SI取代ALNEXT: LOOP CYCLE MOV DS:3300H,AL ;编译器会认为330

2、0H就是3300H,故在前面加DS: MOV AH,4CH INT 21HCODE ENDS END START3.54 有100个字节的数据,连续存放在以DS:1100H的首地址的存储单元中,要求将其全部传送到以ES:2100H为首地址的单元中。试用三种方法编写程序:(1) 不使用串操作指令。(2) 使用不带重复前缀的串操作指令。(3) 使用带重复前缀的串操作指令。解:3.57 有如下程序CLDLEA DI,0202HMOV CX,100HXOR AX,AXREP STOSW试分析此程序段的功能。解: CLD 设置方向。 LEA DI,0202H 把0202H给DI。 MOV CX,100H

3、 CX = 100.重复次数 XOR AX,AX AX = 0; REP STOSW 串操作。把AX的值赋值到SI:DI。然后DI加2.重复100次。用两个0,填充自内存单元ES:0126H开始的100个字单元。3.59 试编写程序,统计以DS:8000H为起始地址的连续200个字节单元中的0的个数。 解:CODE SEGMENT ASSUME CS:CODE START: MOV AX,0 ;用AX统计0的个数 MOV CX,200 ;循环200次 MOV SI,8000H ;通过SI间接访问内存DS:8000H开始的存储单元 CYCLE: CMP BYTE PTR SI,0 JNZ NEX

4、T INC AX NEXT: INC SI LOOP CYCLE MOV AH,4CH INT 21H CODE ENDS END START4.3 什么是指示性语句?它与指令性语句有何区别?解:(1)指令性语句指令性语句是主要由指令构成的语句,其格式为:标号:操作码操作数;注释 例如:LOP:ADD AL,BX 注意:标号(这里是LOP)必须用“:”结尾。 (2)指示性语句指示性语句主要是由命令(亦称为伪指令)构成的指令,是用来只是汇编程序进行汇编操作的,其格式为:名字/变量命令 参数;注释4.4 画出下列语句中的数据在存储器中的存储情况。ARRAYB DB 12,34H,”ABCD”,2

5、DUP(?,2)ARRAYW DW 1234H,”AB”,”CD”,?,2 DUP(?,2)解:ARRAYW34HARRAYW+1002HARRYAW+112HARRAYW+1100HARRAYW+242HARRAYW+12?ARRAYW+341HARRAYW+13?ARRAYW+444HARRAYW+1402HARRAYW+543HARRAYW+1500HARRAYW+6?ARRAYW+7?ARRAYW+8?ARRAYW+9?4.5程序中数据定义如下:DATA1 DW ?DATA2 DB 32 DUP(?)DATA3 DD ?DLENGTH EQU $-DATAI试问DLENGTH的值是多少

6、?解:DATA1占2个字节,DATA2占32个字节,DATA3占4个字节。DLENGTH=当前地址-DATA1的地址,也等于DATA1,DATA2,DATA3的地址总和。即:DLENGTH=384.6 在某程序中需要为一个变量BUF预留500个字节的存储空间,请写出相应的指令,如果预留500个字节的存储空间呢?解:BUF DB 500 DUP(?) BUF DW 500 DUP(?)4.7 程序中数据定义如下: BUFFERB DB ABCDEF RESULT DB ? BUFFERW DW 30 DUP(?) 写出以下指令的执行结果: MOV AX, TYPE RESULT ; AX=1 MOV BX, TYPE BUFFERW ; BX=2 MOV CX, LENGTH BUFFERB ; CX=1 MOV DX, LENGTH BUFFERW ; DX=30 MOV AX, SIZE RESULT ; AX=1 MOV BX, SIZE BUFFERW ; BX=60

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号