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

当前位置:首页 > 福州大学汇编语言课程作业1~5

福州大学汇编语言课程作业1~5

  • 62 次阅读
  • 3 次下载
  • 2025/12/9 7:11:55

SCANF ENDP

;------------------------------ DEAL PROC XOR EAX,EAX MOV SI,0 MOV DI,0 MOV ECX,COUNT AGAIN: MOV AX,DAT[SI] AND AL,1 CMP AL,0 JNE NEXT MOV AX,DAT[SI] MOV P[DI],AX ADD DI,2 INC NO NEXT: ADD ESI,2 LOOP AGAIN RET

DEAL ENDP

;------------------------------------- PRINT PROC LEA EDX,PROMPT3 CALL WRITESTRING MOV AX,NO CALL WRITEINT CALL CRLF RET

PRINT ENDP

;-------------------------------------- EXAM PROC ;输入验证函数 XOR EAX,EAX MOV ESI,0 MOV ECX,COUNT

BEGIN: MOV AX,DAT[ESI] CALL WRITEINT CALL CRLF ADD ESI,2 LOOP BEGIN CALL CRLF RET

EXAM ENDP

;-------------------------------------- START: CALL SCANF ; CALL EXAM

CALL DEAL CALL PRINT EXIT END START

5.2将从键盘输入的N个有符号数保存到数组TAB ,找出N个有符号数中绝对值大于X的最小负奇数存放到Min单元,如果没有找到则Min单元存放0。在终端上显示Min的绝对值。

TAB DD X1,……,XN

X DD xx(无符号数,自己设定) Min DD ?

要求:1、求数据Min的功能用子程序实现 2、画主程序及子程序流程图 3、熟练掌握综合程序设计方法

INCLUDE IRVINE32.INC .DATA

TAB DD 100 DUP(?) X DD ? MIN DD ? COUNT DD ?

PROMPT1 BYTE \要输入几个有符号数:\PROMPT2 BYTE \请输入要比较的数X:\PROMPT3 BYTE \请输入有符号数:\PROMPT4 BYTE \的绝对值为:\;---------------------------------------------------------------- .CODE

SCANF PROC LEA EDX,PROMPT1 CALL WRITESTRING CALL READINT MOV COUNT,EAX MOV ECX,COUNT CALL CRLF LEA EDX,PROMPT2 CALL WRITESTRING CALL READINT MOV X,EAX CALL CRLF LEA EDX,PROMPT3 CALL WRITESTRING MOV ESI,0

INPUT: CALL READINT

MOV TAB[ESI],EAX ADD ESI,4 LOOP INPUT RET

SCANF ENDP

;---------------------------------------------------------------- FIND PROC MOV ESI,0 MOV ECX,COUNT

AGAIN: MOV EAX,TAB[ESI] CMP EAX,0 ;判断是否为负数 JNL NEXT ;大于等于0跳转 AND AL,01H ;取最低位 CMP AL,0 ;判断最低位是否为0,为0是偶数 JE NEXT ;是偶数跳转 MOV EAX,TAB[ESI] ;重新取TAB[ESI] NEG EAX ;取绝对值 CMP EAX,X ;比较绝对值和X的大小 JNA NEXT ;低于等于转移 CMP ESI,0 ;判断是否第一次放进MIN JE FIRST ;是0,是第一次存放跳转 NEG EAX ;不是0,即不是第一次存放,MIN中已有数,重新取TAB[ESI] CMP EAX,MIN ;比较当前数与MIN中数的大小 JNL NEXT ;大于等于MIN跳转 JMP DEAL FIRST: NEG EAX ;该步仅用于第一次存放MIN时恢复EAX的原值 DEAL: MOV MIN,EAX NEXT: ADD ESI,4 LOOP AGAIN CALL CRLF RET

FIND ENDP

;----------------------------------------------------------------- PRINT PROC LEA EDX,PROMPT4 CALL WRITESTRING MOV EAX,MIN NEG EAX CALL WRITEINT CALL CRLF RET

PRINT ENDP

;------------------------------------------------------------------ START:

MOV MIN,0 CALL SCANF CALL FIND CALL PRINT CALL CRLF EXIT END START

搜索更多关于: 福州大学汇编语言课程作业1~5 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

SCANF ENDP ;------------------------------ DEAL PROC XOR EAX,EAX MOV SI,0 MOV DI,0 MOV ECX,COUNT AGAIN: MOV AX,DAT[SI] AND AL,1 CMP AL,0 JNE NEXT MOV AX,DAT[SI] MOV P[DI],AX ADD DI,2 INC NO NEXT: ADD ESI,2 LOOP AGAIN RET DEAL ENDP ;------------------------------------- PRINT PROC LEA EDX,PROMPT3 CALL WRITESTRING MOV AX,NO CALL WRITEINT CALL CRLF RET <

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价: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