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

《微机原理及应用》练习册答案

来源:用户分享 时间:2025/5/24 11:19:51 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

DSEG SEGMENT

STRING1 DB ?I AM A STUDENT.? STRING2 DB ?I AM A STUDENT!?

YES DB ?MATCH?,0DH,0AH,?$? NO DB ?NO MATCH?,0DH,0AH,?$?

DSEG ENDS

CSEG SEGMENT MAIN PROC FAR

ASSUME CS:CSEG, DS:DSEG,ES:DSEG

START: PUSH DS SUB AX, AX

PUSH AX

MOV AX, DSEG MOV ES, AX MOV DS, AX

BEGIN: LEA SI, STRI NG1 LEA DI, STRING2

MOV EX, STRING2-STRING1 REPE COMPSB JNE DISPNO MOV AH,09 LEA DX,YES INT 21H DISPNO: MOV AH,09 LEA DX,NO INT 21 MAIN ENDP CSEG ENDS

END START

11、编写程序,计算S=(a+b)—2*(a AND b)

DATA SEGMENT

a DW x b DW y S DW ? DATA ENDS

STACK SEGMENT PARA STACK DW 20H DUP(0) STACK ENDS

17

COSEG SEGMENT

PROC1 PROC FAR

ASSUME CS:COSEG,DS:DATA,SS:STACK START: PUSH DS MOV AX,0 PUSH AX

MOV AX,DATA

MOV DS,AX MOV DX,a MOV BX,a

AND BX,b SHL BX,1 SUB DX,BX MOV S,DX

RET

PROC1 ENDP COSEG ENDS

END START

12、编制一个能循环显示十条新闻标题的控制程序,每条新闻的地址转换表NEWS放在数据区中。

DSEG SEGMENT

NEW1 DB ?NEW1?,0DH,0AH,?$? NEW2 DB ?NEW2?,0DH,0AH,?$? NEW3 DB ?NEW2?,0DH,0AH,?$? . . .

NEW10 DB ?NEW2?,0DH,0AH,?$?

NEWS DW NEW1,NEW2,…NEW10 DSEG ENDS CSEG SEGMENT MAIN PROC FAR

ASSUME CS:CSEG,DS:DSEG START: PUSH DS

SUB AX,AX PUSH AX

MOV AX,DSEG MOV DS,AX

18

BEGIN: MOV CX,10

LEA BX,NEWS DISP: MOV DX,[BX]

ADD BX,2 MOV AH,09 INT 21H LOOP DISP JMP BEGIN

MAIN ENDP CSEG ENDS

END START

13、把0~100(十进制)之间的30个数,存入以GRAD为首地址的30字数组中,GRADE+i表示学号为i+1的学生成绩。另一个数组RANK为30个学生的名次表,其中RANK+i 的内容是学号为i+1的学生的名次。编写程序,根据GRAD中的学生成绩,将排列的名次填入RANK数组中。

DSEG SEGMENT

GRADE DW 30 DUP(?) RANK DW 30 DUP(0)

DSEG ENDS

CSEG SEGMENT

MAIN PROC FAR

ASSUME CS:CSEG,DS:DSEG

START: PUSH DS

SUB AX,AX PUSH AX

MOV AX,DSEG MOV DS,AX

BEGIN: MOV DI,0

MOV CX,30

LOOP1: PUSH CX

MOV CX,30 MOV SI,0

MOV AX,GRADE[DI] MOV DX,0

LOOP2: CMP GRAD[SI],AX

JBE GOON INC DX

GOON : ADD SI,2

LOOP LOOP2

19

POP CX INC DX

MOV RANK[DI],DX ADD DI,2

LOOP LOOP1 RET

MAIN ENDP CSEG ENDS

END START

14、编制一程序,寻找一数组中第一个零。把第一零在数组中的相对偏移量送INDEX单元中,若无零数,则送全‘0’到INDEX单元中。

DSEG SEGMENT

ADDR DW 30 DUP(?) INDEX DW ?

DSEG ENDS

CSEG SEGMENT

MAIN PROC FAR

ASSUME CS:CSEG,DS:DSEG

START: PUSH DS

SUB AX,AX PUSH AX

MOV AX,DSEG MOV DS,AX

BEGIN: MOV DI,0

MOV CX,30

LOP: MOV AX,ADDR[DI]

CMP GRAD[DI],0 JNE GOON

MOV INDEX,DI

GOON : ADD DI,2

LOOP LOP RET

MAIN ENDP CSEG ENDS

END START

15、十进制100字数组的首地址为MEM,要求编写程序删除数组中所有为零的项,并将后续项向前压缩,最后将数组中的剩余部分补上零。

20

搜索更多关于: 《微机原理及应用》练习册答案 的文档
《微机原理及应用》练习册答案.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c7ciat26ple6bod04q6ut_5.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top