云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 微机原理作业及参考答案

微机原理作业及参考答案

  • 62 次阅读
  • 3 次下载
  • 2025/5/3 14:25:26

CMP AX,X JL N_HIGH MOV BX,X SUB BX,Y JO OVERFLOW JNS NEXT NEG BX

NEXT: MOV RESULT,BX

N_HIGH: …… OVERFLOW: ……

第四章 汇编语言程序设计(P195)

4-2 内存分配和预置数据

VAR1 DB 12,-12H,3 DUP(0,0FFH) VAR2 DB 100 DUP(0,2 DUP(1,2),0,3) VAR3 DB ‘WELCOME TO’

VAR4 DW VAR3+6 ;取其偏移量给VAR4

VAR5 DD VAR3 ;取其偏移量和段基址给VAR5 4-3

(1)DATA1 DB 86H,27H,23H,00H,24H,1AH (2)DATA2 DW 0B430H,1062H

(3)DATA3 DB 4DUP(20H),20,0,6DUP(1,2)

4-4 (1)2 (2)2 (3)1 (4)10 4-5

(1)VAR1的偏移量是0030H;VAR2的偏移量是003AH (2)CNT=0010H

(3)VAR2+2单元的内容是02H

4-10 DATA X DB Y DB Z DB

SEGMENT 4 DUP(?) 4 DUP(?)

4 DUP(?),0

;定义X,Y,Z为字节变量

DATA ENDS

CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV AX,WORD PTR X[0] ADD AX,WORD PTR Y[0] ;X,Y低16位相加 MOV WORD PTR Z[0],AX ;结果存入Z的低16位 MOV AX,WORD PTR X[2] ADC AX,WORD PTR Y[2] ;X,Y高16位相加 MOV WORD PTR Z[2],AX ;结果存入Z的高16位 JNC OK MOV AL,1 MOV Z+4,AL ;保存进位 OK: MOV AH,4CH INT 21H CODE ENDS END START

4-11

DATA SEGMENT X DB 4 DUP(?) Y DB 4 DUP(?) Z DB 4 DUP(?) ;定义X,Y,Z为字节变量 DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV DL,0

MOV AX,WORD PTR X

SUB AX,WORD PTR Y ;X,Y低16位相减

MOV WORD PTR Z,AX ;结果存入Z的低16位 MOV AX,WORD PTR X[2]

SBB AX,WORD PTR Y[2] ;X,Y高16位相加

MOV WORD PTR Z[2],AX ;结果存入Z的高16位 JNO OK

MOV DL,-1 ;溢出 OK: MOV AH,4CH INT 21H CODE ENDS

END START

4-12 (1)

DATA SEGMENT DB 100 DUP(?)

MESG DB 'ERROR INPUT!$' DATA ENDS

CODE SEGMENT ASSUME CS:CODE,DS:DATA START PROC FAR PUSH DS MOV AX,0 PUSH AX MOV AX,DATA MOV DS,AX MOV AH,01H INT 21H ;从键盘输入一个字符,该字符ASCII码送入AL CMP AL,41H JB ERROR CMP AL,4AH JA ERROR CMP AL,41H JE P0 ;判断输入字符是为'A',则跳转到P0 ... CMP AL,4AH JE P9 ;判断输入字符是为'J',则跳转到P9 P0: ... RET ... P9: ... RET

ERROR: MOV DX,OFFSET MESG MOV AH,09H INT 21H ;输入字符非'A'~'J'则输出错误信息 RET

START ENDP CODE ENDS END START (2)

DATA SEGMENT

BASE DW P0,P1,P2,P3,P4,P5,P6,P7,P8,P9 MESG DB 'ERROR INPUT!$' DATA ENDS

STACK SEGMENT PARA STACK 'STACK' DB 100 DUP(?)

STACK ENDS

CODE SEGMENT ASSUME CS:CODE,DS:DATA START PROC FAR PUSH DS MOV AX,0 PUSH AX MOV AX,DATA MOV DS,AX MOV BX,0 ;BX为跳转表BASE内寻址编号,清零 MOV AH,01H INT 21H ;从键盘输入字符命令 CMP AL,41H JB ERROR CMP AL,4AH JA ERROR ;输入字符非'A'~'J'则跳转到ERROR MOV BL,AL SUB BL,41H ;得编号 SHL BX,1 ;表内偏移量=编号*2 JMP BASE[BX];查跳转表跳转到相应的子程序 ERROR: MOV DX,OFFSET MESG MOV AH,09H INT 21H ;输出错误信息 RET P0: ... RET ... P9: ... RET

START ENDP CODE ENDS END START

4-13

CODE SEGMENT

ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX

MOV GOOD,0 MOV PASS,0 MOV BAD,0

XOR BX,BX ;bx存放全年级统计总成绩 XOR SI,SI

搜索更多关于: 微机原理作业及参考答案 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

CMP AX,X JL N_HIGH MOV BX,X SUB BX,Y JO OVERFLOW JNS NEXT NEG BX NEXT: MOV RESULT,BX N_HIGH: …… OVERFLOW: …… 第四章 汇编语言程序设计(P195) 4-2 内存分配和预置数据 VAR1 DB 12,-12H,3 DUP(0,0FFH) VAR2 DB 100 DUP(0,2 DUP(1,2),0,3) VAR3 DB ‘WELCOME TO’ VAR4 DW VAR3+6 ;取其偏移量给VAR4 VAR5 DD VAR3 ;取其偏移量和段基址给VAR5 4-3

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com