8086汇编中断入门
来源:互联网 发布:工艺流程优化的案例 编辑:程序博客网 时间:2024/06/03 21:40
微机原理与接口技术作业,通过测试,分享一下
;2.编写一中断服务程序,中断类型号取76H,中断服务程序完成将AL和BL中存放的非压缩型BCD码相加,并将相加结果在屏幕上显示出来。;先开辟存放两个非压缩性BCD码的DB类型的数据区 DATA,进入程序再读进来DATASEG SEGMENTDATA DB 06H,09HOBUF DB 06H DUP (?) ; DATASEG ENDSSTACKSEG SEGMENT stackStatckSeg DW 40 DUP(?)StackTop EQU LENGTH StatckSegSTACKSEG ENDSCODESEG SEGMENT ASSUME CS : CODESEG, DS : DATASEG START: ;macro template;brief : load specified interrupt address;note : in this version MACRO , interrupt num must pass by register;date : 2013/12/03;author: @brt INTERRUPT_ADDR MACRO InterruptNum,InterruptProcName PUSH DS PUSH AX PUSH BX MOV AX, 00H MOV DS, AXMOV AX, 04H MUL InterruptNum MOV BX, AX MOV WORD PTR DS:[BX] , OFFSET InterruptProcName MOV WORD PTR DS:[BX+02H], SEG InterruptProcName POP BX POP AX POP DS ENDM MAIN PROC FAR MOV AX, STACKSEG MOV SS, AXMOV AX, StackTop ; copy stack pointer top SPMOV SP, AX PUSH DS MOV AX, 00H PUSH AX MOV AX, DATASEG MOV DS, AX MOV CL, 76H INTERRUPT_ADDR CL,INT_76H INT 76H CALL DISP_NUMRET MAIN ENDP INT_76H PROC FAR PUSH BX PUSH SI MOV SI, OFFSET DATA MOV AL, BYTE PTR[SI] INC SI MOV BL, BYTE PTR[SI] ADD AL, BL MOV AH, 00H POP SI POP BX IRET INT_76H ENDP ;sub-process template;brief : dispay the value of AX,AX = ((DX):(AX)) / 10; DX = ((DX):(AX)) % 10;note : only display 16 bit width number,you can modify defined OBUF variable bit width according to your need ;date : 2013/11/26;author: @brtDISP_NUM PROC NEARMOV BX, OFFSET OBUF+6-1MOV BYTE PTR [BX],'$'MOV CX, 0AH;LOOP_NUM:;just like do{....}while(ax != 0)MOVDX, 00H DIV CXADD DL, 30H;number value convert to ASCIIDEC BXMOV [BX], DLOR AX, AXJNZ LOOP_NUM;check AX is 0MOV DX, BX ;BX : start index of numberMOV AH, 09HINT 21H RETDISP_NUM ENDPCODESEG ENDSEND START
0 0
- 8086汇编中断入门
- 8086汇编中断
- 8086汇编 中断例程
- 汇编--中断
- 汇编------中断
- 汇编入门学习----第二天(1)--中断【原创】
- 汇编入门学习笔记 (十三)—— 外中断
- 8086汇编中断的数字表
- 8086汇编学习笔记9-中断
- 8086汇编学习笔记9-中断
- 8086汇编0号中断处理程序
- 汇编安装中断:
- 汇编~~~~~~~~~中断处理程序
- 汇编学习--7.16--中断
- 汇编中断大全
- 汇编10H中断
- 汇编中断处理
- s5pv210的汇编中断
- Processing Bitmaps Off the UI Thread不在UI线程中处理Bitmaps(Android官方翻译文档2)
- Win32下c++调用java
- Python list(列表)排序的两种方法
- 【Java】基本数据类型长度
- 设计模式(19)-行为型模式-OBSERVER模式
- 8086汇编中断入门
- H3C SecPath F100-C 防火墙配置说明
- Android下c++调用java实现内置外置sd卡MP3扫描并保存在文件中
- 理解org伪指令
- png jpg图片转换为eps的在线网站,用于LaTeX
- android Socket与SocketServer
- C++学习第七天:迭代器
- python 数学函数
- 设计模式(20)-行为型模式-State模式