汇编语言及接口技术(第三章).ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2、变量存储区域中数据的存放 源程序在代码段的开始需要对段寄存器与段之间的关系作假定,以便汇编程序根据给定的偏移地址和段寄存器计算出正确的物理地址 格式: ASSUME 段寄存器:段名[,段寄存器:段名,……] 注:ASSUME只是告诉汇编程序段寄存器与段间的对应关系,并没有将段首址置入对应的段寄存器中。程序最后运行时,CS和SS的内容由系统自动设置,但DS和ES必须由程序将其段首址分别置入 3.4.4 段寄存器的假定 格式:END [表达式] 功能:源程序的最后一个语句,标志整个源程序结束,即告诉汇编程序,汇编到此结束 表达式为可选项,必须是存储器地址,即程序的启动地址,常为过程名 不带表达式,则该程序不能单独运行,只是供其他程序调用的子模块 3.4.5 源程序的结束 用$表示,记录正在被汇编程序翻译的指令的偏移地址 例:DATA SEGMENT ;段定义 BUF DB ’0123456789ABCDEF’ COUNT EQU $-BUF ;定义常量COUNT=16 DATA ENDS $的值由ORG设置,格式为: ORG 数值表达式 ;$=数值表达式的值 3.4.3 汇编地址计数器 第三章 汇编语言与汇编程序 3.1 3.3 符号指令中的表达式 符号指令的寻址方式 常用指令 3.2 伪指令 3.4 常用系统功能调用和 BIOS 3.5 IBM PC微机系统为汇编用户提供了两个程序接口,一个是DOS系统功能调用,另一个是ROM中的BIOS(Basic Input /OutpuT System)。它们由一系列中断服务子程序构成,由软中断指令 INT N 来调用,通过中断返回指令IRET返回 3.5 常用系统功能调用和BIOS 1、调用的一般过程: 置入口参数 功能调用号→AH 执行INT 21H 分析出口参数 视具体情况而定 3.5.1 系统功能调用 调用格式: MOV AH,1 INT 21H 入口:无入口参数 出口:键入字符ASCII码值在AL中,回显 2、常用功能调用 参见P76 表示2-3 (1)1号功能调用——键入并显示一个字符 例1:设计一程序段,从键盘读入两个1位的十进制数,将它们相加后把结果存入AL中。 MOV AH, 01 INT 21h ;从键盘读入第一个数的ASCII码,存入AL。 SUB AL, 30h MOV BL,AL ;将ASCII码转换为十进制数转存入BL MOV AH,01 INT 21H ;从键盘读入第二个数的ASCII码,存入AL。 SUB AL,30H; ;将第2个数转换为十进制数,存入AL ADD AL,BL 调用格式: MOV DL,待显示字符的ASCII MOV AH,2 INT 21H 入口:输出字符的ASCII 送 DL 出口:无出口参数 例:显示字符 ’B’ MOV AH,2 MOV DL,’B’ INT 21H (2)2号功能调用——显示器显示一个字符 例2:从键盘输入一个字符,并同时在显示屏上输出,当键入字符‘$’时,则停止操作。 DON1: MOV AH,O1H ;置单字符输入 INT 21H CMP AL,‘$’ ;是结束字符吗 JZ DON2 ;是,转向DON2 MOV DL,AL MOV AH,02H ;显示输出字符 INT 21H JMP DON1 DON2: INT 20H ;程序结束 调用格式: MOV DX,待显示字符串的首偏移地址 MOV AH,9 INT

文档评论(0)

kehan123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档