第4章汇编语言程序设计 4.1汇编语言基本概念 4.2汇编语言程序设计
第4章 汇编语言程序设计 4.1 汇编语言基本概念 4.2 汇编语言程序设计
41汇编语言基本概念 41.1程序设计语言 41.2汇编语言的语句结构 413伪指令 返回本章首页
4.1 汇编语言基本概念 4.1.1 程序设计语言 4.1.2 汇编语言的语句结构 4.1.3 伪指令 返回本章首页
41.1程序设计语言 按照语言的结构及其功能可以分为三种: 机器语言:机器语言是用二进制代码0和1表 示指令和数据的最原始的程序设计语言 2.汇编语言:在汇编语言中,指令用助记符表 示,地址、操作数可用标号、符号地址及字 符等形式来描述。 3.高级语言:高级语言是接近于人的自然语言 面向过程而独立于机器的通用语言
4.1.1 程序设计语言 按照语言的结构及其功能可以分为三种: 1.机器语言:机器语言是用二进制代码0和1表 示指令和数据的最原始的程序设计语言。 2.汇编语言:在汇编语言中,指令用助记符表 示,地址、操作数可用标号、符号地址及字 符等形式来描述。 3.高级语言:高级语言是接近于人的自然语言, 面向过程而独立于机器的通用语言。 返回本节
4.12汇编语言的语句结构 1.汇编语言的指令类型 MCS-51单片机汇编语言,包含两类不同性质 的指令。 (1)基本指令:即指令系统中的指令。它们都 是机器能够执行的指令,每一条指令都有对 应的机器码。 (2)伪指令:汇编时用于控制汇编的指令。它 们都是机器不执行的指令,无机器码。 下一贪
4.1.2 汇编语言的语句结构 1.汇编语言的指令类型 MCS-51单片机汇编语言,包含两类不同性质 的指令。 (1)基本指令:即指令系统中的指令。它们都 是机器能够执行的指令,每一条指令都有对 应的机器码。 (2)伪指令:汇编时用于控制汇编的指令。它 们都是机器不执行的指令,无机器码。 下一页
2.汇编语言的语句格式 汇编语言源程序是由汇编语句(即指令)组成 的。汇编语言一般由四部分组成。 其典型的汇编语句格式如下 标号:操作码操作数;注释 START: MOVA, 30H A←(30H)
2.汇编语言的语句格式 汇编语言源程序是由汇编语句(即指令)组成 的。汇编语言一般由四部分组成。 其典型的汇编语句格式如下: 标号: 操作码 操作数 ;注释 START:MOVA,30H ;A←(30H) 返回本节
413伪指令 1.ORG:汇编起始地址 用来说明以下程序段在存储器中存放的起 始地址。 例如程序: ORG 1000H START MOVA,#20H MOVB, #30H 2.EQU:赋值 给变量标号赋予一个确定的数值 下一贪
4.1.3 伪指令 1.ORG:汇编起始地址 用来说明以下程序段在存储器中存放的起 始地址。 例如程序: ORG 1000H START: MOVA,#20H MOVB,#30H ┇ 2.EQU:赋值 给变量标号赋予一个确定的数值。 下一页
3.DB:定义数据字节 把数据以字节数的形式存放在存储器单元中。 4.Dw:定义数据字 按字的形式把数据存放在存储单元中 5.DS:定义存储区 从指定的地址单元开始,保留一定数量存储单元 BIT:位定义 确定字符名为确定的位地址值 7.END:汇编结束
3.DB:定义数据字节 把数据以字节数的形式存放在存储器单元中。 4.DW:定义数据字 按字的形式把数据存放在存储单元中。 5.DS:定义存储区 从指定的地址单元开始,保留一定数量存储单元。 6.BIT:位定义 确定字符名为确定的位地址值。 7.END:汇编结束 返回本节
42汇编语言程序设计 42,1汇编语言程序设计步骤 4,22顺序程序 42.3分支程序 4,24循环程序 4.25子程序 4,2,6位操作程序 返回本章首页
4.2 汇编语言程序设计 4.2.1 汇编语言程序设计步骤 4.2.2 顺序程序 4.2.3 分支程序 4.2.4 循环程序 4.2.5 子程序 4.2.6 位操作程序 返回本章首页
421汇编语言程序设计步骤 1.分析问题 2.确定算法 3.设计程序流程图 4.分配内存单元 5.编写汇编语言源程序 6.调试程序
4.2.1 汇编语言程序设计步骤 1.分析问题 2.确定算法 3.设计程序流程图 4.分配内存单元 5.编写汇编语言源程序 6.调试程序 返回本节
422顺序程序 顺序程序是一种最简单,最基本的程序 特点:程序按编写的顺序依次往下执行每一条 指令,直到最后一条 【例41】将30H单元内的两位BCD码拆开并 转换成ASCI码,存入RAM两个单元中。程 序流程如图4.1所示。参考程序如下: ORG 0100H MOV A, 30H 取值 ANLA,#0FH;取低4位 下一贪
4.2.2 顺序程序 顺序程序是一种最简单,最基本的程序。 特点:程序按编写的顺序依次往下执行每一条 指令,直到最后一条。 【例4.1】 将30H单元内的两位BCD码拆开并 转换成ASCII码,存入RAM两个单元中。程 序流程如图4.1所示。参考程序如下: ORG 0100H MOV A,30H ;取值 ANL A,#0FH ;取低4位 下一页