当前位置:高等教育资讯网  >  中国高校课件下载中心  >  大学文库  >  浏览文档

浙江大学:《单片微型计算机原理与接口技术》课程电子教案(PPT教学课件)第四章 80C51单片微机的程序设计

资源类别:文库,文档格式:PPT,文档页数:131,文件大小:562KB,团购合买
1.计算机语言——机器语言、汇编语言与高级语言 程序就是为计算某一算式或完成某一工作的若干指令的有 序集合。计算机的全部工作概括起来,就是执行这一指令序 列的过程。这一指令序列称为程序。为计算机准备这一指令 前的过程称为程序设计。
点击下载完整版文档(PPT)

外1以

第四章 80C51单片微机的程序设计

4.1概述 4.1.1汇编语言格式 1.计算机语言—机器语言、汇编语言与高级语言 程序就是为计算某一算式或完成某一工作的若干指令的有 序集合。计算机的全部工作概括起来,就是执行这一指令序 列的过程。这一指令序列称为程序。为计算机准备这一指令 前的过程称为程序设计。 (1)机器语言 在计算机中,所有的数符都是用二进制代码来表示的,指 令也是用二进制代码来表示。这种用二进制代码表示的指令 系统称为机器语言系统,简称为机器语言。直接用机器语ˉ 编写的程序称为手编程序或机器语言程序

4.1概述 4.1.1 汇编语言格式 1. 计算机语言——机器语言、汇编语言与高级语言 程序就是为计算某一算式或完成某一工作的若干指令的有 序集合。计算机的全部工作概括起来,就是执行这一指令序 列的过程。这一指令序列称为程序。为计算机准备这一指令 前的过程称为程序设计。 ⑴ 机器语言 在计算机中,所有的数符都是用二进制代码来表示的,指 令也是用二进制代码来表示。这种用二进制代码表示的指令 系统称为机器语言系统,简称为机器语言。直接用机器语言 编写的程序称为手编程序或机器语言程序

2)汇编语言 在程序设计自动化的第一阶段,就是用英文字符来代替机 器语言,这些英文字符被称为助记符。用这种助记符表示指令系 统的语言称为汇编语言或符号语言,用汇编语言编写的程序称为 汇编语言程序 具有以下几个特点: ①助记符指令与机器指令是一一对应的,所以用汇编语言 编写的程序效率高,占用存储空间小,运行速度快,而且能反映 计算机的实际运行情况,所以用汇编语言能编写出最优化的程序。 ②汇编语言是“面向机器”的语言,编程比使用高级语言 困难 ③汇编语言能直接访问存储器、输入与输出接口及扩展的 各种芯片(比如AD、DA等),也可直接处理中断,因此汇编语言 能直接管理和控制硬件设备

⑵ 汇编语言 在程序设计自动化的第一阶段,就是用英文字符来代替机 器语言,这些英文字符被称为助记符。用这种助记符表示指令系 统的语言称为汇编语言或符号语言,用汇编语言编写的程序称为 汇编语言程序。 具有以下几个特点: ① 助记符指令与机器指令是一一对应的,所以用汇编语言 编写的程序效率高,占用存储空间小,运行速度快,而且能反映 计算机的实际运行情况,所以用汇编语言能编写出最优化的程序。 ② 汇编语言是“面向机器”的语言,编程比使用高级语言 困难。 ③ 汇编语言能直接访问存储器、输入与输出接口及扩展的 各种芯片(比如A/D、D/A等) ,也可直接处理中断,因此汇编语言 能直接管理和控制硬件设备

④汇编语言通用性差,汇编语言和机器语言一样,都面 向一台具体的机器,不同的单片微机具有不同的指令系统,并 且不能通用 但是,计算机不能直接识别在汇编语言中出现的字母 数字和符号,需要将其转换成用二进制代码表示的机器语言程 序,才能够识别和执行。通常把这一转换(翻译)工作称为汇 编。汇编可以由程序员通过查指令表把汇编指令程序转换为机 器语言程序,这个过程称为人工汇编。目前基本上由专门的程 序来进行汇编,这种程序称为汇编程序。经汇编程序汇编而得 到的机器语言程序,计算机能够识别和执行,因此这一机机器 语言程序称为目的程序或目标程序,而汇编语言程序称为源程 序。这三者之间的关系如图4所示

④ 汇编语言通用性差,汇编语言和机器语言一样,都面 向一台具体的机器,不同的单片微机具有不同的指令系统,并 且不能通用。 但是,计算机不能直接识别在汇编语言中出现的字母、 数字和符号,需要将其转换成用二进制代码表示的机器语言程 序,才能够识别和执行。通常把这一转换(翻译)工作称为汇 编。汇编可以由程序员通过查指令表把汇编指令程序转换为机 器语言程序,这个过程称为人工汇编。目前基本上由专门的程 序来进行汇编,这种程序称为汇编程序。经汇编程序汇编而得 到的机器语言程序,计算机能够识别和执行,因此这一机机器 语言程序称为目的程序或目标程序,而汇编语言程序称为源程 序。这三者之间的关系如图4–1所示

3)高级语言 比如BASC、 FORTRAN、 COBOL及 PASCAL等,都是 些参照数学语言而设计的、近似于人们日常用语的语言。这种 语言不仅直观、易学、易懂,而且通用性强,易于移植到不同类 型的机器中去。计算机也不能直接识别和执行高级语言,需要将 其转换为机器语言才能识别和执行。对于高级语言,这一转换工 作通常称为编译或者解释。进行编译或者解释的专用程序称为编 译程序或者解释程序。 由于高级语言不受具体机器的限制,而且使用了许多数学 公式和习惯用语,从而简化了程序设计的过程,因此是一种面向 问题或者面向过程的语言。近年来高级语言发展很快,相继出现 了许多面向工程设计、自动控制、人工智能等方面的语言,比如, APT、 PROLOG、LSP、PLM以及C语言等。而80C51系列单 片微机作为工业标准地位,从1985年开始就有C语言编译器,简 称C51。“面向控制”这一使用的特点,仍以汇编语言为主进行 讲解

⑶ 高级语言 比如BASIC、FORTRAN、COBOL及PASCAL等,都是 一些参照数学语言而设计的、近似于人们日常用语的语言。这种 语言不仅直观、易学、易懂,而且通用性强,易于移植到不同类 型的机器中去。计算机也不能直接识别和执行高级语言,需要将 其转换为机器语言才能识别和执行。对于高级语言,这一转换工 作通常称为编译或者解释。进行编译或者解释的专用程序称为编 译程序或者解释程序。 由于高级语言不受具体机器的限制,而且使用了许多数学 公式和习惯用语,从而简化了程序设计的过程,因此是一种面向 问题或者面向过程的语言。近年来高级语言发展很快,相继出现 了许多面向工程设计、自动控制、人工智能等方面的语言,比如, APT、PROLOG、LISP、PL/M以及C语言等。而80C51系列单 片微机作为工业标准地位,从1985年开始就有C语言编译器,简 称C51。 “面向控制”这一使用的特点,仍以汇编语言为主进行 讲解

2.汇编语言 (1)汇编语言语句的种类和格式 ①汇编语言语句的种类 汇编语言语句有三种基本类型:指令语句、伪指令语句 和宏指令语句。 指令语句:每一个指令语句都在汇编时产生一个目标代码, 对应着机器的一种操作。 例如:MOVA,# 伪指令语句:主要是为汇编语言服务的,在汇编时没有目标 代码与之对应。 例如: ONE EQU1 宏指令语句:用以代替汇编语言源程序中重复使用的程序段 的一种语句,由汇编程序在汇编时产生相应的目标代码

⒉ 汇编语言 ⑴ 汇编语言语句的种类和格式 ① 汇编语言语句的种类 汇编语言语句有三种基本类型:指令语句、伪指令语句 和宏指令语句。 指令语句:每一个指令语句都在汇编时产生一个目标代码, 对应着机器的一种操作。 例如:MOVA,#0 伪指令语句:主要是为汇编语言服务的,在汇编时没有目标 代码与之对应。 例如:ONE EQU 1 宏指令语句:用以代替汇编语言源程序中重复使用的程序段 的一种语句,由汇编程序在汇编时产生相应的目标代码

②汇编语言语句的格式 指令语句和伪指令语句的格式是类似的。 指令语句的格式为: 【标号(名字)】:助记符(操作码)【操作数(参数)〗; 注释】 伪指令语句的格式: 名字定义符参数;注释 两种语句都由四个部分组成。其中每一部分称为域也称为字段, 各字段之间用一个空格或字段定界符分隔,常用的字段定界符 有冒号“:”、逗号“,”和分号“;”。其中方括号括起来 的是可选择部分

② 汇编语言语句的格式 指令语句和伪指令语句的格式是类似的。 指令语句的格式为: 【标号(名字)】:助记符(操作码)【操作数(参数)】 ; 【注释】 伪指令语句的格式: 名字 定义符 参数 ;注释 两种语句都由四个部分组成。其中每一部分称为域也称为字段, 各字段之间用一个空格或字段定界符分隔,常用的字段定界符 有冒号“:”、逗号“,”和分号“;”。其中方括号括起来 的是可选择部分

标号(也称为名字)域: 用来说明指令的地址。标号可以作为LJMP、AJMP CALL及 ACALL等指令的操作数 在指令语句中,标号位于一个语句的开头位置,由字母和 数符组成,字母打头,冒号“:”结束。在80C51单片微机的汇 编语言中,标号中的字符个数一般不超过8个,若超过8个,则 以前面的8个为有效,后面字符不起作用。 不能使用本汇编语言中已经定义了的符号作标号,比如指 令助记符(如ADD)、伪指令(如END)及寄存器符号名称(如PC)。 条语句可以有标号,也可以没有标号,标号的有无取决 于程序中的其它语句是否需要访问该条语句。 伪指令语句与指令语句主要不同是在其名字后面没有冒号

标号(也称为名字)域: 用来说明指令的地址。标号可以作为LJMP、AJMP、 LCALL及ACALL等指令的操作数。 • 在指令语句中,标号位于一个语句的开头位置,由字母和 数符组成,字母打头,冒号“ : ”结束。在80C51单片微机的汇 编语言中,标号中的字符个数一般不超过8个,若超过8个,则 以前面的8个为有效,后面字符不起作用。 • 不能使用本汇编语言中已经定义了的符号作标号,比如指 令助记符(如ADD) 、伪指令 (如END) 及寄存器符号名称(如PC) 。 • 一条语句可以有标号,也可以没有标号,标号的有无取决 于程序中的其它语句是否需要访问该条语句。 伪指令语句与指令语句主要不同是在其名字后面没有冒号

操作码域: 是指令的助记符或定义符,用来表示指令的性质,规定这 个指令语句的操作类型 伪指令语句中的定义符规定这个指令语句的伪操作功能。 对于标号缺省的语句,操作码域作为一行的开始。但在书写 时,应与上一行的操作码对齐 操作数域: 给出的是参与运算或进行其它操作的数据或这些数据的地址 操作数与操作码之间用空格“”分隔,若有两个操作数, 这两个操作数之间必须用逗号“,”分开。操作数域若是数据的 直接或间接地址,则必须满足寻址方式的规定

操作码域: 是指令的助记符或定义符,用来表示指令的性质,规定这 个指令语句的操作类型。 伪指令语句中的定义符规定这个指令语句的伪操作功能。 对于标号缺省的语句,操作码域作为一行的开始。但在书写 时,应与上一行的操作码对齐。 操作数域: 给出的是参与运算或进行其它操作的数据或这些数据的地址。 • 操作数与操作码之间用空格“”分隔,若有两个操作数, 这两个操作数之间必须用逗号“,”分开。操作数域若是数据的 直接或间接地址,则必须满足寻址方式的规定

对于操作数域出现的常数:若采用十六进制数表示,其末 尾必须加“H”说明;若十六进制数以A、B、C、D、E、F开头, 其前面必须添一个“0”进行引导说明,例如;0FOH,否则在机 器汇编时会出错。若采用二进制数表示,其末尾必须用“B”说 明。若采用十进制数表示,可以不加后缀或加“D”说明。 80C51的操作数可以是寄存器寻址、直接地址等七种寻址方式 注释域由分号“;”引导开始,是说明语句功能、性质 以及执行结果的文字。使用注释可以使文件编制显得更加清楚, 便于人们阅读程序,简化软件的维护。对机器不起作用。注释 的长度不限,一行不够可换行接着写,但换行的开头仍以分号 “;”引导

• 对于操作数域出现的常数:若采用十六进制数表示,其末 尾必须加“H”说明;若十六进制数以A、B、C、D、E、F开头, 其前面必须添一个“0”进行引导说明,例如;0F0H,否则在机 器汇编时会出错。若采用二进制数表示,其末尾必须用“B”说 明。若采用十进制数表示,可以不加后缀或加“D”说明。 80C51的操作数可以是寄存器寻址、直接地址等七种寻址方式。 注释域由分号“;”引导开始,是说明语句功能、性质 以及执行结果的文字。使用注释可以使文件编制显得更加清楚, 便于人们阅读程序,简化软件的维护。对机器不起作用。注释 的长度不限,一行不够可换行接着写,但换行的开头仍以分号 “;”引导

点击下载完整版文档(PPT)VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
共131页,可试读30页,点击继续阅读 ↓↓
相关文档

关于我们|帮助中心|下载说明|相关软件|意见反馈|联系我们

Copyright © 2008-现在 cucdc.com 高等教育资讯网 版权所有