- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机原理及接口技术汇编语言程序设计
汇编语言的编译过程 1)用文本编辑器编写符合汇编格式的程序,并将文件的扩展名命名为.ASM,该文件称为汇编源程序。 2)利用汇编程序(MASM.EXE)将汇编源程序翻译成计算机可以识别和运行的扩展名为.OBJ二进制目标程序。 3)利用链接程序(LINK.EXE)将目标文件进行地址重定位、目标程序组合等过程,产生用户可以执行的扩展名为.EXE的可运行程序。 定位伪指令ORG 指定数据段或者代码段的偏移地址。 DATA SEGMENT ORG 0200H BUF DB 10 DUP (?) ;变量BUF的在数据段的偏移地址 DATA ENDS ;是0200H,省略为0000H CODE SEGMENT ASSUME CS:DCODE,DS,DATA ORG 1000H ;首条指令在代码段的偏移地址 MOV AX,DATA ;是1000H,省略为0100H MOV DS,AX …… CODE ENDS END SUB AL,30H ;是0~9之间的字符,则转换为二进制数 SHL BX,1 MOV DX,BX SHL BX,1 SHL BX,1 ADD BX,DX ;利用移位指令,实现数值乘10 MOV AH,0 ADD BX,AX ;与新输入数值相加 JMP READ1 ;继续输入字符 READ3:CMP CX,0 JZ READ4 NEG BX ;是负数,进行求补 READ4:MOV AX,BX ;设置出口参数 POP DX POP CX POP BX ;恢复寄存器 RET ;子程序返回 READ ENDP 编写主程序,调用READ子程序输入5个数据,找到最大的一个将其存放在字变量MAXNUM中。 STACK SEGMENT STACK STACK STAK DW 256 DUP(?) ;堆栈段大小是256个字 STACK ENDS DATA SEGMENT ARRAY DW 5 DUP(?) ;预留5个数据存储空间 MAXNUM DW ? DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK ;绑定各个段与段寄存器 MAIN PROC START:MOV AX,DATA MOV DS,AX MOV CX,5 ;调用子程序的循环次数 MOV BX,OFFSET ARRAY AGAIN:CALL READ ;调用子程序输入数据 MOV [BX],AX ;出口参数送缓冲区 ADD BX,2 ;BX指向缓冲区下一个字单元 LOOP AGAIN MOV BX,OFFSET ARRAY ;取缓冲区的偏移量送BX MOV CX,04 ;比较的次数送CX MOV AX,[BX] ;取第一个数 LABLE:INC BX INC BX ;BX指向缓冲区下一个字单元 CMP AX,[BX] ;比较AL和第N+1个数 JNL NEXT ;不小于则转入NEXT MOV AX,[BX] ;否则将大数送AX NEXT:LOOP LABLE ;继续下一次比较 MOV MAXNUM,AX ;最大数送MAXNUM字单元 MOV AH,4CH INT 21H MAIN ENDP READ PROC
您可能关注的文档
最近下载
- 《医疗和疾控机构后勤安全生产工作管理指南(2023年版)》——医用气体安全管理指南实践分享.pdf VIP
- 温州育英国际实验学校初一招生试卷语文试卷.docx VIP
- 建筑工程资料承包合同.docx VIP
- 房地产公司资金平衡表(深度好表).xlsx VIP
- 新解读《HJ 1285-2023屠宰及肉类加工业污染防治可行技术指南》最新解读.docx VIP
- 离心式冷水机组调试方案.pdf VIP
- 2024人教版小学三年级劳动技术上册第一单元:纸工大单元整体教学设计.docx
- 范例9:悬挑式脚手架专项施工方案.pdf VIP
- HSK(四级)词汇整理.pdf VIP
- 1994年全国高中化学竞赛试题.pdf VIP
文档评论(0)