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

微机原理习题答案1234章(8)

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

INT ADD CALL LOOP

21H SI,2 WAIT L1

这里,WAIT为延时子程序,用于在显示信息之间的停顿。

23. 编写程序实现将包含20个数据的数组ARRAY分成两个数组:正数数组ARRAYP和负数数组ARRAYN,并分别将这两个数组中数据的个数显示出来。

解:先编写一个子程序DISPALD,完成以3位十进制数形式显示出AL的内容。

DISPALD PROC NEAR

PUSH AX PUSH CX PUSH DX XOR AH,AH MOV CL,100 DIV CL PUSH AX MOV DL,30H ADD DL,AL MOV AH,2 INT 21H POP AX MOV AL,AH XOR AH,AH MOV CL,10 DIV CL PUSH AX MOV DL,30H ADD DL,AL MOV AH,2

- 35 -

INT 21H POP AX MOV DL,30H ADD DL,AH MOV AH,2 INT 21H POP DX POP CX POP AX RET

DISPALD ENDP

在此基础上,根据题目要求,需要用到3个指针:SI指向源数组ARRAY,DI指向正数数组ARRAYP,BX指向负数数组ARRAYN。

MOV XOR LEA LEA LEA MOV AND JS MOV INC INC JMP MOV INC INC INC

CX,20 DX,DX SI,ARRAY DI,ARRAYP BX,ARRAYN AL,[SI] AL,AL L2 [DI],AL DI DL L3 [BX],AL BX DH SI

- 36 -

L1:

L2:

L3:

LOOP MOV CALL MOV CALL

L1 AL,DL DISPALD AL,DH DISPALD

24. 编写程序实现求缓冲区BUFFER的100个字中的最小偶数(存入AX)。 解:设BUFFER中存放的是有符号数。 L1: L2:

MOV CX,100 LEA SI,BUFFER MOV AX, 7FFFH AND WORD PTR [SI],1 JNZ L2 CMP [SI],AX JGE L2 MOV AX,[SI] ADD SI,2 LOOP L1

225. 编写程序实现求级数1解:BL用于存放项数。

?22???n2??的前n项和刚大于2000的项数n。

STACK SEGMENT STACK 'STACK' DW 100H DUP(?) TOP

LABEL WORD

STACK ENDS DATA SEGMENT DB 100H DUP(?) DATA ENDS CODE SEGMENT

ASSUME CS:CODE, DS:DATA, ES:DATA, SS:STACK START:

- 37 -

MOV AX,DATA MOV DS,AX MOV ES,AX MOV AX,STACK MOV SS,AX LEA SP,TOP MOV BL,1 MOV CX,0 COUNT:

MOV AL, BL MUL BL ADD CX,AX CMP CX,2000 JA EXIT INC BL JMP COUNT

EXIT:

26. 定义一条宏指令,实现将指定数据段的段地址传送到段寄存器ES或DS的功能。 解:

27. 定义一条宏指令,实现从键盘中输入一个字符串(利用INT 21H的09号功能)。 28. 定义一条宏指令,实现在屏幕上输出回车、换行。 29. 利用其它指令完成与下列指令一样的功能:

(1)REP MOVSB; (3)REP STOSB;

解:设DF=0 (1)

(2)REP LODSB; (4)REP SCASB。

L1: MOV AL,[SI]

MOV ES:[DI],AL INC INC

SI DI

- 38 -

LOOP L1

(2)

L1: MOV AL,[SI]

INC

SI

LOOP L1

(3)

L1: MOV ES:[DI],AL

INC

DI

LOOP L1

(4)

L1: MOV AL,[SI]

CMP AL,ES:[DI] INC INC

SI DI

LOOP L1

30. 设在数据段中定义了:

STR1 DB ‘ASSEMBLE LANGUAGE’ STR2 DB 20 DUP(?) 利用字符串指令编写程序段实现:

(1)从左到右将STR1中的字符串传送到STR2; (2)从右到左将STR1中的字符串传送到STR2; (3)将STR1中的第6个和第7个字节装入DX;

(4)扫描STR1字符串中有无空格,如有则将第一个空格符的地址传送到SI。 解: STR1中有17个字符(含一个空格),设DS和ES均指向STR1和STR2所在的段。 (1)

CLD MOV LEA LEA REP MOV LEA LEA

CX,17 SI,STR1 DI,STR2 MOVSB CX,17 SI,STR1 DI,STR2

- 39 -

(2)

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

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