汇编-子程序设计(共6页).doc
《汇编-子程序设计(共6页).doc》由会员分享,可在线阅读,更多相关《汇编-子程序设计(共6页).doc(6页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上实验四 子程序设计一 、实验目的(1)掌握汇编语言子程序设计方法。 (2)掌握主程序与子程序之间的调用关系及调用方法。 (3)掌握通过寄存器传送参数的方法。二、实验环境 (1) 硬件环境:计算机系统windows;(2) 软件环境:装有MASM、DEBUG、LINK、等应用程序。三、实验内容(方法步骤):编程实现:十进制到十六进制数转换程序。程序要求:从键盘取得一个十进制数,然后把该数以十六进制形式在屏幕上显示出来。四、实验说明(1) 键盘输入的十进制数(ASCII),要将它转换成二进制存放 。子程序:DECIBIN(2) 二进制转换成十六进制数并显示子程序:BINI
2、HEX(3) 为避免屏幕上的重叠,必须有回车和换行功能。子程序:CRLF用三个子程序联合实现题目要求 联合由主程序达到。将BX寄存器作为过程之间传送转换数据的“ 交通员”。 五、实验步骤(1)编辑、汇编源程序,生成相应的可执行文件(.EXE)(2)检查程序执行的结果是否正确。六、流程图主程序流程图如下图:子程序CRLF流程图如下图:子程序DECIBIN流程图如下图:子程序BINIHEX流程图如下图:七、源程序data segment data ends code segment assume cs:code,ds:datamain:call DECIBINcall CRLFcall BINIH
3、EXmov ah,4Chint 21hDECIBIN PROC MOV BX,0 NEWCHAR: MOV AH,1 INT 21H SUB AL,30H JL EXIT CBW XCHG AX,BX MOV CX,10D MUL CX XCHG AX,BX ADD BX,AX JMP NEWCHAR EXIT: RET DECIBIN ENDP CRLF PROC NEAR MOV AH,02H MOV DL,0AH INT 21H MOV AH,02H MOV DL,0DH INT 21H RET CRLF ENDP BINIHEX PROC NEAR START: MOV CH,4 NOTATE:MOV CL,4 ROL BX,CL MOV AL,BL AND AL,0FH ADD AL,30H CMP AL,3AH JL PRINTIT ADD AL,7H PRINTIT:MOV DL,AL MOV AH,2 INT 21H DEC CH JNZ NOTATE RET BINIHEX ENDPcode endsend main八、问题思考 (1)当输入“#”时,退出主程序,如何修改程序? (2)说明用寄存器传送参数的过程及其具体方法,各子程序的应用。 (3)实验结果及所遇到问题,并说明解决的方法。九、实验小结专心-专注-专业
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 汇编 子程序 设计
限制150内