单片机课件:MCS-51汇编语言程序设计_第1页
单片机课件:MCS-51汇编语言程序设计_第2页
单片机课件:MCS-51汇编语言程序设计_第3页
单片机课件:MCS-51汇编语言程序设计_第4页
单片机课件:MCS-51汇编语言程序设计_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

MCS-51汇编语言程序设计4.1汇编语言程序设计概述汇编语言程序:用汇编语言编写的、完成特定功能的指令序列。汇编程序:

能将汇编语言源程序转换成机器语言目标程序的系统软件。汇编:

汇编语言程序到机器语言程序的转换过程称为汇编。汇编方式:1.手工汇编:人工查指令表汇编。用于设计短小程序或调试程序的场合。—早期行为。2.机器汇编:用汇编程序进行汇编。—PC机普及后。4MCS-51汇编语言程序设计4.1汇编语言程序设计概述汇编的主要任务:1)确定程序中每条汇编语言指令的指令机器码。2)确定每条指令在存储器中的存放地址。3)提供错误信息。4)提供目标执行文件(*.OBJ/*.HEX)和列表文件(*.LST)。汇编语言的语句格式:[<标号>:]<操作码>[<操作数>][;<注释>]4MCS-51汇编语言程序设计4.1汇编语言程序设计概述汇编语言的语句格式:[<标号>:]<操作码>[<操作数>][;<注释>]

标号:以字母开头的1-8个字符(字母、数字等)和“:”组成。不能使用本汇编语言已定义的符号。1BT:BEGINTA+TB:ADD:

操作码:语句执行的操作内容,不能空缺。

操作数:为指令的操作提供数据或地址;可缺省,也可包括二项、三项;各操作数之间以逗号分隔。

注释:以“;”开头,如换行还应加“;”。BEGIN:BT1:TATB:ADD1:4MCS-51汇编语言程序设计4.1汇编语言程序设计概述4.4MCS-51汇编语言的伪指令源程序使用机器汇编要考虑汇编程序的约定1)按指令格式和语法规则编写程序。常数的表示: 十进制数:20

十六进制数:87H,0F0H

二进制数:01011001B

字符: ‘H’

字符串: “Hello”。2)使用伪指令提供汇编信息。伪指令是汇编程序的命令,有作用,无相对应的机器码。汇编语言指令类型4MCS-51汇编语言程序设计4.1汇编语言程序设计概述4.4MCS-51汇编语言的伪指令1.机器指令:指令系统中的全部指令,每条指令有对应的机器代码。2.伪指令:汇编控制指令,仅提供汇编信息,没有指令代码。3.宏指令:宏汇编功能:将需要多次反复执行的程序段定义成一个宏 指令名(宏定义),编程时,可在程序中使 用宏指令名来替代一段程序(宏调用)。4.4MCS-51汇编语言的伪指令汇编语言伪指令—起始地址指令:指明程序和数据块起始地址。1.ORG指令地址机器码 源程序

ORG 2000H 2000H7830 MAIN:MOVR0,#30H2002HE6 MOVA,@R0

… ORG3000H3000H23 DB23H,100,‘A’

3001H643002H414.4MCS-51汇编语言的伪指令汇编语言伪指令1.ORG2.END—结束汇编指令。(1)整个源程序只有一条“END”指令。(2)如“END”指令在中间,其后的源程序汇编程序将不予处理。3.EQU—等值。为标号或标识符赋值。X1 EQU2000H

X2 EQU0FH

MAIN: MOVDPTR,#X1

ADDA,#X24.4MCS-51汇编语言的伪指令汇编语言伪指令1.ORG2.END3.EQU4.DB—定义字节型常数指令。例:DB12H,100,‘A’5.DW—定义字型常数指令。4.4MCS-51汇编语言的伪指令汇编语言伪指令1.ORG2.END3.EQU4.DB5.DW6.DS—定义存储区命令。[<标号:>]DS<16位数表>例:ADDRTABL: DS 20ORG 8100HDS08H7.BIT—位定义命令。<字符名称>BIT<位地址>例:AQBITP1.0;保留20个地址单元;从8100H开始保留8个地址单元;将P1.0位地址赋予AQ压缩式BCD码分解成为单字节BCD码片内RAM42H0

十41H0

个40H

十个MOV R0,#40H ;设指针MOV A,@R0 ;取一个字节MOV R2,A ;暂存ANL A,#0FH ;清0高半字节INC R0MOV @R0,A ;保存数据个位MOV A,R2SWAPA ;十位换到低半字节ANL A,#0FHINC R0MOV @R0,A ;保存数据十位求R2中补码绝对值,正数不变,负数变补。 MOVA,R2

JNBACC.7,NEXT;判断,转移

DECA ;减一

CPL

A;取反

MOVR2,ANEXT:SJMPNEXT ;结束

为一串7位ASCII码数据的D7位加上奇校验,设数据存放在片外RAM的2101H起始单元,数据长度在2100H单元。

MOVDPTR,#2100H MOVXA,@DPTR;取数据长度

MOVR2,A;循环次数NEXT:INCDPTR MOVXA,@DPTR;开始取数

ORLA,#80H;高位置1,同 ;时影响奇偶位

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论