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

汇编考试重点20题 docx(3)

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

6.4 分析下面的程序,写出堆栈最满时各单元的地址及内容。 ;******************************************** STACK SEGMENT AT 500H ;定义堆栈段 DW 128 DUP (?) TOS LABEL WORD STACK ENDS

;******************************************** CODE SEGMENT ;定义代码段 MAIN PROC FAR ;主程序部分 ASSUME CS: CODE, SS: STACK START: MOV AX, STACK MOV SS, AX MOV SP, OFFSET TOS PUSH DS SUB AX, AX PUSH AX

;MAIN PART OF PROGRAM GOES HERE MOV AX, 4321H CALL HTOA RET

MAIN ENDP ;主程序部分结束

;-------------------------------------------------------------------- HTOA PROC NEAR ;HTOA子程序 CMP AX, 15

11 / 16

JLE B1 PUSH AX PUSH BP MOV BP, SP MOV BX, [BP+2] AND BX, 000FH MOV [BP+2], BX POP BP MOV CL, 4 SHR AX, CL CALL HTOA POP AX

B1: ADD AL, 30H CMP AL, 3AH JL PRINTIT ADD AL, 7H

PRINTIT: MOV DL, AL MOV AH, 2 INT 21H RET

HOTA ENDP ;HOTA子程序结束

;-------------------------------------------------------------------- CODE ENDS ;代码段结束

;******************************************

12 / 16

END START ;程序结束;******************************************** 500:00EC 500:00EE 500:00F0 500:00F2 500:00F4 500:00F6 500:00F8 500:00FA 500:00FC 500:00FE SP: IP 0003H IP 0002H IP 0001H IP 0000 (DS) 00EE

6.7 设有10个学生的成绩分别是76,69,84,90,73,88,99,63,100和80分。试编制一个子程序统计60~69分,70~79分,80~89分,90~99分和100分的人数,分别存放到S6,S7,S8,S9和S10单元中。 答:程序如下: DSEG SEGMENT

RECORD DW 76,69,84,90,73,88,99,63,100,80 S6 DW 0 S7 DW 0 S8 DW 0 S9 DW 0 S10 DW 0 DSEG ENDS

;****************************************** CSEG SEGMENT MAIN PROC FAR

ASSUME CS: CSEG, DS: DSEG

START: PUSH DS ;设置返回DOS SUB AX, AX PUSH AX

13 / 16

MOV AX, DSEG

MOV DS, AX ;给DS赋值 BEGIN: MOV CX, 10 CALL COUNT

┇ ;后续程序 RET

MAIN ENDP

;-------------------------------------------------------------------------- COUNT PROC NEAR ;成绩统计子程序 MOV SI, 0

NEXT: MOV AX, RECORD[SI]

MOV BX, 10 ;以下5句是根据成绩计算相对S6的地址变化量 DIV BL ;计算公式为:((成绩)/10-6)*2送(BX) MOV BL, AL ;此时(BH)保持为0不变 SUB BX, 6 ;应为只统计60分以上成绩 SAL BX, 1 ;(BX)*2

INC S6[BX] ;S6是S6,S7,S8,S9和S10单元的首地址 ADD SI, 2 LOOP NEXT RET

COUNT ENDP ;COUNT子程序结束

;-------------------------------------------------------------------------- CSEG ENDS ;以上定义代码段

;****************************************** END START

7.3 给定宏定义如下:(注意:此宏指令的功能是V3←|V1-V2|) DIF MACRO X, Y MOV AX, X SUB AX, Y ENDM

ABSDIF MACRO V1, V2, V3 LOCAL CONT PUSH AX DIF V1, V2 CMP AX, 0 JGE CONT NEG AX

CONT: MOV V3, AX POP AX ENDM

试展开以下调用,并判定调用是否有效。 (1) ABSDIF P1, P2, DISTANCE

14 / 16

(2) ABSDIF [BX], [SI], X[DI], CX

(3) ABSDIF [BX][SI], X[BX][SI], 240H (4) ABSDIF AX, AX, AX

答:答:(1) 宏调用 ABSDIF P1, P2, DISTANCE 的宏展开如下:此宏调用有效。 1 PUSH AX 1 DIF P1, P2 1 MOV AX, P1 1 SUB AX, P2 1 CMP AX, 0 1 JGE ??0000 1 NEG AX

1 ??0000: MOV DISTANCE, AX 1 POP AX

(2) 宏调用 ABSDIF [BX], [SI], X[DI], CX 的宏展开如下:此宏调用有效。 1 PUSH AX 1 DIF [BX], [SI] 1 MOV AX, [BX] 1 SUB AX, [SI] 1 CMP AX, 0 1 JGE ??0001 1 NEG AX

1 ??0001: MOV X[DI], AX 1 POP AX

(3) 宏调用 ABSDIF [BX][SI], X[BX][SI], 240H 的宏展开如下:此宏调用无效。 1 PUSH AX

1 DIF [BX][SI], X[BX][SI] 1 MOV AX, [BX][SI] 1 SUB AX, X[BX][SI] 1 CMP AX, 0 1 JGE ??0002 1 NEG AX

1 ??0002: MOV 240H, AX 1 POP AX

(4) 宏调用 ABSDIF AX, AX, AX 的宏展开如下:此宏调用有效但无多大意义。 1 PUSH AX 1 DIF AX, AX 1 MOV AX, AX 1 SUB AX, AX 1 CMP AX, 0 1 JGE ??0003 1 NEG AX

1 ??0003: MOV AX, AX 1 POP AX

15 / 16

7.5 宏指令BIN_SUB完成多个字节数据连减的功能: RESULT←(A-B-C-D-…)

要相减的字节数据顺序存放在首地址为OPERAND的数据区中,减数的个数存放在COUNT单元中,最后结果存入RESULT单元。请编写此宏指令。 答:宏定义如下:

BIN_SUB MACRO RESULT, A, OPERAND, COUNT LOCAL NEXT_SUB PUSH CX PUSH BX PUSH AX

MOV CX, COUNT MOV AL, A

LEA BX, OPERAND CLC

NEXT_SUB: SBB AL, [BX] INC BX

LOOP NEXT_SUB MOV RESULT, AL POP AX POP BX POP CX ENDM

7.7 下面的宏指令CNT和INC1完成相继字存储。 CNT MACRO A, B A&B DW ? ENDM

INC1 MACRO A, B CNT A, %B B=B+1 ENDM

请展开下列宏调用: C=0

INC1 DATA, C INC1 DATA, C

答:宏展开如下: C=0

INC1 DATA, C 1 DATA0 DW ? INC1 DATA, C

1 DATA0 DW ? (注意:C为0没有变)

16 / 16

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库汇编考试重点20题 docx(3)在线全文阅读。

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