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

当前位置:首页 > 合肥工业大学汇编语言程序设计实验报告 - 图文

合肥工业大学汇编语言程序设计实验报告 - 图文

  • 62 次阅读
  • 3 次下载
  • 2025/5/3 19:32:38

实验四 汇编语言高级编程专题

一. 实验目的

1、汇编语言宏程序设计;

2、 掌握中断服务子程序的编写。 3、 汇编语言与高级语言的混编。

二. 实验内容

1、编写一个宏,求三个数的最小数,原型为:MIN3 x,y,z,min

2、挂接1CH中断,正计时60秒后退出。要求屏幕显示0-59的秒数。 3、VC++中编写内联汇编,将字节数组的每个元素高低四位互换。 char dbyte[] = {0x34,0x45,0x56,0x67,0xaf};

三. 实验过程和程序 1;宏 min3

min3 macro x,y,z mov al,x mov bl,y mov cl,z cmp al,bl ;比较al,bl jae j1 ;bl

j5: mov ah,02h ;min bl mov dl,bl or dl,30h int 21h jmp done

done: mov ah,4ch int 21h endm

DATAS SEGMENT

;未定义数据段数据 DATAS ENDS

STACKS SEGMENT ;未定义栈段数据 STACKS ENDS

CODES SEGMENT

ASSUME CS:CODES,DS:DATAS,SS:STACKS START:

MOV AX,DATAS MOV DS,AX

min3 2,1,6 ;找出2 1 6三数中最小数

MOV AH,4CH INT 21H CODES ENDS

END START 2.

DATA SEGMENT OLDISR DW ?,? TIMER DB 100 COUNTER DW 0 ISDONE DB 0 DATA ENDS

STACKS SEGMENT ;未定义 STACKS ENDS

CODES SEGMENT

ASSUME CS:CODES,DS:DATA,SS:STACKS

START:

MOV AX,DATA MOV DS,AX xor ax,ax MOV ES,AX xor cx,cx

MOV AX, ES:[1ch*4] MOV OLDISR[0],AX MOV AX,ES:[1ch*4+2] MOV OLDISR[2], AX

MOV WORD PTR ES:[1ch*4], OFFSET ISR MOV WORD PTR ES:[1ch*4+2],SEG ISR WAITHERE:

CMP ISDONE,1 JNZ WAITHERE EXIT:

MOV AX,OLDISR[0] MOV ES:[1ch*4],AX MOV AX,OLDISR[2]

MOV ES:[1ch*4+2],AX MOV AX,4C00H INT 21H

ISR PROC FAR PUSH DX PUSH AX

MOV AX,DATA MOV DS,AX STI

INC TIMER AGAIN:

mov ah,0bh int 21h or al,al jz j2

MOV AH,8 ;不显示输入的字符 INT 21H

CMP AL, 'a' JNE j2

MOV AH,2h MOV DL,10 INT 21H

MOV COUNTER,0 j2: CMP TIMER, 1000/55

JB DONE

MOV TIMER,0 MOV AH,2 MOV DL,13 INT 21H

j3: MOV AX,COUNTER MOV DL,10 DIV DL

MOV DH,AH MOV DL,AL MOV AH,2 ADD DL,30H INT 21H mov ah,2 mov dl,dh ADD DL,30H INT 21H

inc COUNTER cmp COUNTER,60 JNE DONE

MOV ISDONE,1 DONE: PUSHF

CALL DWORD PTR OLDISR CLI POP AX POP DX

IRET ;中断返回 ISR ENDP CODES ENDS

END START 3.

#include using namespace std; int main(){

char dbyte[]={0x34,0x45,0x56,0x67,0x67};

__asm{

mov esi,0 again: mov cl,4 ror dbyte[esi],4 inc esi cmp esi,5

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

实验四 汇编语言高级编程专题 一. 实验目的 1、汇编语言宏程序设计; 2、 掌握中断服务子程序的编写。 3、 汇编语言与高级语言的混编。 二. 实验内容 1、编写一个宏,求三个数的最小数,原型为:MIN3 x,y,z,min 2、挂接1CH中断,正计时60秒后退出。要求屏幕显示0-59的秒数。 3、VC++中编写内联汇编,将字节数组的每个元素高低四位互换。 char dbyte[] = {0x34,0x45,0x56,0x67,0xaf}; 三. 实验过程和程序 1;宏 min3 min3 macro x,y,z mov al,x mov bl,y mov cl,z cmp al,bl ;比较al,bl ja

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