版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、一、汇编言语与机器言语1、机器言语:是计算机可以识别直接执行的言语,这种方式也叫目的代码机器码,全由01组成。高级言语编的源程序在执行时也必需全翻译成机器言语2、汇编言语:用机器言语指令的助记符来编写程序的言语称汇编言语阅读了解方便,为程序员提供了完全控制目的代码的手段。3、源程序:用各种言语编写的程序本身。4、汇编程序与编译程序:汇编言语源程序-汇编-目的代码高级言语源程序-编译-目的代码5、汇编言语包含:指令 让微处置器执行操作的指令 伪指令 通知汇编程序如何汇编的指令汇编言语的根本概念存放常数、变量以及作为算术运算区和用来作为I/O接口传送数据的任务区 语句格式:称号 空格或冒号操作助记
2、符空格操作数 ;注释“:、。1、常数:数值常数-可为各种数制,必需以数字打头,除十进制外,必需用后缀注明,如BOH等。字符串常数-由单引号括起的字符串,用来表示相应的ASCII码,如179是31H37H39H。2、表达式:由操作数和操作符运算符构成,表达式的值必须在汇编或衔接时就确定。+-*/整除MOD求二整数相除的余数ANDORNOTXOR按位进展EQ相等NE不等LT小于GT大于LE小于等于GE大于等于,关系成立前往全1,关系不成立前往全016位1SEG运算符取段地址运算符,该运算前往变量或标号所在段的段地址字常量。2OFFSET运算符取段内偏移地址符,该运算前往变量或标号所在段的段内偏移地
3、址。 3TYPE运算符取类型属性运算符,该运算前往变量或标号的类型值。假设运算对象是标号,那么前往标号的间隔属性值,假设运算对象是变量,那么前往变量类型所占字节数。 4LENGTH运算符取数组变量元素个数运算符,假设变量是用反复数据操作符DUP阐明的,那么前往DUP前面的数值即反复次数;假设没有DUP阐明,那么前往值总是“1。1.EQU伪指令格式:名字 EQU 表达式 功能:是将数值或字符序列与一个指定的名字等价。有以下4种用法。1为常量定义一个符号,以便在程序中运用符号来表示常量。2为变量或标号定义新的类型属性并起一个新的名字。3为由地址表达式指出的恣意存储单元定义一个名字。4为汇编言语中的
4、任何符号定义一个新的名字。2.“=伪指令 “=伪指令同EQU,但 a,对同一个称号可定义多次 b,表达式的值不得超越16位2进制数。3. LABEL伪指令格式:变量或标号名 LABEL 类型功能:为当前存储单元定义一个指定类型的变量名或标号。2. ASCII字符串3. 地址表达式4. ?表达式5.nDUP表达式1. 数值表达式段名 SEGMENT 定位类型组合类型类别 ;语句 段名 ENDS 段名:是所定义段的称号。二个段名必需一致,具有段地址、偏移地址,以及后面用 括起来的三个可选属性。 定位类型: 表示对该段起始边境段基址、段起始地址的要求。BYTE 字节边境,段起始地址可位于任何地方;W
5、ORD 字边境,段起始地址能被2整除;PARA 节边境,段起始地址能被16整除,是缺省的定位类型;PAGE 页边境,段起始地址能被256整除;由于段地址只能被16整除,前二种情况段内偏移地址不一定从0起。 组合类型:表示该段与其他段的组合关系。NONE: 缺省组合类型,阐明本段与其他段逻辑上无关。PUBLIC:阐明本段与其他模块中用PUBLIC阐明的同名同类别段 可以相继连成一个段,运用同一个段地址。STACK: 同 PUBLIC,但此组合类型,未来程序执行时SS与SP 自动被赋予堆栈的栈底。COMMON:阐明衔接时该段与其他模块中属于该类别的同名同类 别段可以相互重叠地放在一同,其长度为同名
6、段中最 长者的长度。 类别:是用单引号括起来的字符串。衔接时,衔接程序将不同模块中一样类别的各段在物理上相应地衔接在一同。当程序只需一个模块时,除堆栈用STACK阐明外,其他段的组合类别与类别均可省略。MEMORY:衔接时被放在所装载程序的最高地址区,当有多个 MEMORY类别段时,只将衔接程序遇到的第一个 MEMORY段为MEMORY段,其他的均作COMMON。AT 表达式:阐明该段的段地址由AT后的表达式给定,段内不应 有任何指令语句或含初值的变量定义语句。1. 根本的输入与输出根本的输入与输出2. 文件管理文件管理3.ROM BIOS 中断调用中断调用例1:内存中自TABLESQ开场的1
7、6个存储单元延续存放着自然数0到15的平方值,任一数 x0 x15存放在其后的 XX 单元,查表求出 x 这个数的平方值,并放到 YY 单元中。DATA SEGMENTTABLESQDB0,1,4,9,16,25,36,49 DB64,81,100,121,144,169,196,225 XXDB? YYDB?DATA ENDSSTACK SEGMENTPARASTACK STACK DB50 DUP?STACK ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACKBEGIN:MOV AX,DATA MOV DS,AX MOV BX,OFFSET T
8、ABLESQ MOV AH,0 MOV AL,XX ADD BX,AX MOV AL,BX MOV YY,AL MOV AH,4CH INT 21HCODE ENDS END BEGIN分支构造的程序需求由控制转移类指令来实现。 转移指令:可以改动程序指令指针IP的内容添加、减少,也能够同时改动CS和IP的内容,从而改动程序的走向。无条件转移指令条件转移指令(1) 直接转移:指令中直接给出转移的目的指令的标号a、段内短转移: 给出对于当前指令IP值的带符号的8位位移量,执行时 IP+D8 送 IP, D8=目的偏移地址当前IP, 范围: 128 127例:JMP SHORT OPR ;OPR是
9、目的指令的语句标 ;号或者标号的表达式。 SHORT是伪指令中的属性运算符,指出转移目的在 128 127 范围内。1.无条件转移指令无条件转移指令b、段内近转移: 给出对于当前IP值的带符号的16位位移量,执行时 IP+D16 送 IP,D16=目的偏移地址当前IP,范围:32768 32767例: JMP NEAR PTR OPR JMP OPR ;NEAR可以省略b、段内近转移: 给出对于当前IP值的带符号的16位位移量,执行时 IP+D16 送 IP,D16=目的偏移地址当前IP,范围:32768 32767例: JMP NEAR PTR OPR JMP OPR ;NEAR可以省略(2
10、) 间接转移:指令中给出的是存放转移目的指令的地址。a、段内间接转移:转移目的的地址在存储器或存放器中;b、段间间接转移:转移目的的地址只能在存储器中。例:JMP OPR1;OPR1取决于寻址方式: 段内:寻址方式给出的一个字送IP 段间:寻址方式给出的二个字送CS:IP2.条件转移指令条件转移指令满足一定条件,那么发生转移常用标志存放器中的形状标志作为判别条件a、对于带符号数,常用大于、小于、等于 greater、less、equal 对于无符号数,常用高于、低于、等于 above、below、equalb、都是位移量为8位的相对寻址方式 转移范围 128 1271.循环程序的构成循环程序的
11、构成2.循环程序的类型循环程序的类型3.控制循环次数的方法控制循环次数的方法1、子程序过程: 可以被其他程序调用的能完成确定功能的独立程序段 子程序阐明文件:子程序该当有本人的阐明文件,要阐明: a,功能描画; b,用到的存放器和存储单元; c,入口和出口参数; d,用到的其他子程序。2、子程序二种方式: a,简单地用标号开头,RET结尾的程序段; b,用过程伪指令定义一段程序为一个过程。3、过程定义伪指令格式: 过程名 PROC类型;过程体RET 过程名ENDP类型: FAR 可供段间调用 NEAR 只可段内调用,是缺省的类型。4、子程序的运用:调用和前往指令 (1) 调用指令:段内调用:
12、CALL OPR ;SP-2 SP, IP SP+1,SP ; OPR的偏移地址 IP ;OPR是过程名或语句标号 ;段内直接调用 CALL OPR1 ;SP-2 SP, IP SP+1,SP ;转移目的的偏移量 IP ;OPR1是由寻址方式给出的转移目的的有效地址 ;段内间接调用(2) 前往指令:段内前往: RET ;SP+1,SPIP ; SP+2 SP段间前往: RETF ; (SP+1,SPIP ; SP+2 SP ; (SP+1,SP CS ; SP+2 SP RET n ;完成前往后,SP+n SPA、 CALL FAR PTR OPR 为段间调用远调用,但假设OPR 已定义为FA
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2.2构造地貌的形成 第三课时 教案-2022-2023学年高中地理人教版(2019)选择性必修1
- 2026年思茅地区翠云区政务服务中心(窗口人员)招聘笔试备考题库及答案详解
- 2026年石家庄市井陉矿区工会人员招聘考试参考题库及答案详解
- 2026年大同市矿区医疗系统事业编人员招聘笔试备考试题及答案详解
- 学校思想政治工作总结报告报告2026(3篇)
- 2026年永州市芝山区政务服务中心(窗口人员)招聘考试备考试题及答案详解
- 2026年莆田市秀屿区工会人员招聘考试模拟试题及答案详解
- 2026年广东省清远市政务服务中心(窗口人员)招聘笔试参考试题及答案详解
- 人教版三年级上册语文期中考试卷及答案【新版】
- 2026年金华市婺城区医疗系统事业编人员招聘笔试参考题库及答案详解
- 2026年中小学教师(语文)副高级职称评审答辩题库及答案
- 学校管理与教师专业发展手册
- 初中音乐七年级上册《美丽的草原我的家》深度鉴赏与跨文化理解教案
- 2026秋新人教版英语五年级上册单元一Unit 1 Different friends测试卷-提高卷附答案(文档中已插入听力音频)
- 2026广西南宁市青秀区伶俐镇人民政府招聘2人(劳务派遣)笔试参考题库及答案详解
- 2026年餐饮服务食品安全管理员试题及答案
- GB/T 47950-2026资产管理数据资产登记指南
- 2026版《医师外出会诊管理暂行规定》课件
- 影像医学技术操作规程大全
- 2026年河南高考地理考试试卷及答案
- 中国老年抗中性粒细胞胞浆抗体相关肾小球肾炎治疗指南总结2026
评论
0/150
提交评论