4.1 计算机语言概述 4.1.1 机器语言 机器语言就是用二进制编码表示每条指令。因为计算机只能识别二进制数,所以计算机能够直接执行用机器语言编出的机器码程序。不同种类的计算机,由于其内部结构不完全相同,它的机器码指令也不一定相同。

Slides:



Advertisements
Similar presentations
会计从业资格 初级会计电算化. 考试题型: 本章内容在考试中以单选题、多选题、判断题 形式出现; 重点理解计算机软件的概念,掌握计算机软件 的构成,了解常用软件的内容。 计算机软件.
Advertisements

Assembly Language Programming 湛江师范学院 汇编语言程序设计实验课件 主讲教师:王 晓 晔.
3.6 汇编语言以及汇编语句 2.
基于解释性语言的手机跨平台架构 Sloan Yi. Qt MTK.
1.1 计算机系统简介 1.2 计算机的基本组成 1.3 计算机硬件的主要技术指标 1.4 本书结构.
第 四 章 信息的加工与表达(下).
计算机基础知识 丁家营镇九年制学校 徐中先.
第4章 MCS-51程序设计 4.1 汇编语言的格式与伪指令 4.2 汇编语言程序设计步骤 4.3 查表程序设计 4.4 循环程序设计
第四章 汇编语言程序设计 §4-1 程序设计语言 §4-2 汇编语言源程序格式 §4-3 伪指令 §4-4 汇编语言程序设计基础.
本章分为四节,主要介绍: 4.1 程序编制的方法和技巧 4.2 源程序的编辑和汇编 4.3 基本程序结构 4.4 常用程序举例.
单片机原理与应用.
第2章 MCS-51单片机指令系统与汇编语言程序设计
第二部分 微机原理 第4章 汇编语言 程序设计 主讲教师:喻红.
第二讲 搭建Java Web开发环境 主讲人:孙娜
走进编程 程序的顺序结构(二).
汇编语言程序设计课程设计 第二次实验 DEBUG基本命令与算术运算指令
Zhao4zhong1 (赵中) C语言指针与汇编语言地址.
Zhao4zhong1 (赵中) C语言指针与汇编语言地址.
第一单元 初识C程序与C程序开发平台搭建 ---观其大略
数 控 技 术 华中科技大学机械科学与工程学院.
第五讲 四则运算计算器(一) 精品教程《C#程序设计与应用(第2版)清华大学出版社 谭恒松 主编
第17章 网站发布.
第四章 汇编语言程序设计.
第二章 Java语言基础.
逆向工程-汇编语言
CPU结构和功能.
用event class 从input的root文件中,由DmpDataBuffer::ReadObject读取数据的问题
宁波市高校慕课联盟课程 与 进行交互 Linux 系统管理.
教师:王晓甜 8086CPU 指令系统 教师:王晓甜
宁波市高校慕课联盟课程 与 进行交互 Linux 系统管理.
程序设计工具实习 Software Program Tool
第7章 在C/C++中使用汇编 罗文坚 中国科大 计算机学院
C语言程序设计 主讲教师:陆幼利.
学习目标 1、什么是字符集 2、字符集四个级别 3、如何选择字符集.
第4章 汇编语言程序设计 (课时:12学时).
教学难点: 分支程序、散转程序与子程序的设计
VisComposer 2019/4/17.
VB与Access数据库的连接.
(Random Access Memory)
微机原理与接口技术 微机原理与接口技术 朱华贵 2015年11月13日.
工业机器人知识要点解析 (ABB机器人) 主讲人:王老师
第二章 补充知识 2.1 总线和三态门 一、总线(BUS) 三总线结构 数据总线DB(Data Bus)
计算机网络与网页制作 Chapter 07:Dreamweaver CS5入门
<编程达人入门课程> 本节内容 内存的使用 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群: ,
项目二:HTML语言基础.
汇编语言程序设计.
Lightweight Data-flow Analysis for Execution-driven Constraint Solving
成绩是怎么算出来的? 16级第一学期半期考试成绩 班级 姓名 语文 数学 英语 政治 历史 地理 物理 化学 生物 总分 1 张三1 115
第4章 Excel电子表格制作软件 4.4 函数(一).
本节内容 内存复制指令 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
第九节 赋值运算符和赋值表达式.
用穷举法设计程序 南京师范大学 教育技术系 倪佳慧
<编程达人入门课程> 本节内容 计算机编程语言 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群: ,
College of Computer Science & Technology
魏新宇 MATLAB/Simulink 与控制系统仿真 魏新宇
单片机应用技术 项目一 循环彩灯装置 第5讲 MCS-51单片机指令系统及指令格式 《单片机应用技术》精品课程组 湖北职业技术学院机电工程系.
本节内容 C语言的汇编表示 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
第二节 C语言的特点.
实验目的:掌握数据的顺序存储结构及它们在计算机中的操作。 实验内容:
C++语言程序设计 C++语言程序设计 第一章 C++语言概述 第十一组 C++语言程序设计.
循环程序设计 在程序中包含重复执行的程序段称为循环程序设计。循环程序可以使程序结构性强、可读性好,从而大大提高了程序质量。
第四节 向量的乘积 一、两向量的数量积 二、两向量的向量积.
数据表示 第 2 讲.
4.3 汇编语言程序设计 顺序程序设计 顺序程序设计是最基本的程序设计。它是按照指令排列的先后顺序依次执行,每条指令都必须执行,且只执行一遍。顺序程序设计一般比较单一、简单,常常作为复杂程序的一部分。
第8章 创建与使用图块 将一个或多个单一的实体对象整合为一个对象,这个对象就是图块。图块中的各实体可以具有各自的图层、线性、颜色等特征。在应用时,图块作为一个独立的、完整的对象进行操作,可以根据需要按一定比例和角度将图块插入到需要的位置。 2019/6/30.
第十七讲 密码执行(1).
FVX1100介绍 法视特(上海)图像科技有限公司 施 俊.
第4章 MCS-51汇编语言程序设计 教学基本要求: (1)、了解MCS-51汇编语言程序设计的特点;
任课教师:戴开宇 TA:时均帅、谭肖、王安华 程序设计B班 :20-16:50(90分钟)
学习目标 1、什么是列类型 2、列类型之数值类型.
Presentation transcript:

4.1 计算机语言概述 4.1.1 机器语言 机器语言就是用二进制编码表示每条指令。因为计算机只能识别二进制数,所以计算机能够直接执行用机器语言编出的机器码程序。不同种类的计算机,由于其内部结构不完全相同,它的机器码指令也不一定相同。

4.1.2 汇编语言 汇编语言是符号化的机器语言。它用一些容易理解和记忆的符号代替机器码指令,因此又把汇编语言称为助记符语言,也就是说助记符指令与机器码指令是一一对应的。汇编语言同机器语言一样,不同结构的计算机,它的汇编指令也不相同。上述“9+5”的例子用AT89C51汇编语言可写成: MOV A,#09H ADD A,#05H

对比机器码,汇编语言克服了机器语言的缺点,方便了用户记忆指令和编写程序,但用汇编语言编写的源程序毕竟不是计算机能直接识别的机器码,需用汇编程序“翻译”成机器码后方可执行。 采用汇编语言编写程序,可以直接访问和操作单片机中的寄存器及存储器单元,对数据的处理表述的非常具体。因此,在计算机实时测试和控制领域中得到了广泛应用。

4.1.3 高级语言 高级语言是接近自然语言和数学语言的算法语言,具有直观、通用等特点。相对于高级语言,机器语言和汇编语言属于低级语言。用低级语言编写程序需要完全了解CPU硬件结构,对程序设计人员要求较高,且程序不能移植。

4.2 汇编语言源程序的设计与汇编 4.2.1 汇编语言格式 汇编语言直接面向机器,它的格式因机器不同而不同。下面介绍AT89C51汇编语言指令格式,我们先看一段用AT89C51指令编写的汇编程序。

[例4.1] 将30H、31H两个单元中的大数送入A中。 MOV A,30H CJNE A,31H,BIG    BIG:JNC OVER ;30H单元值大则结束 MOV A,31H ;31H单元值小则送入累加器A中 OVER: RET

从例4.1中可以看出,AT89C51单片机汇编语言指令格式如下: [标号:] 操作码 操作数 [;注释] 其中[ ]的部分为可选项。下面结合程序对指令格式中的各部分逐一加以说明: (1) 标号是表示该指令位置的符号地址。 (2) 操作码指出了指令所要实现的操作功能。 (3) 操作数指出了参与操作的数据来源(源操作数)和操作结果存放的目的单元(目的操作数)。

(4) 注释是对一条指令或一段程序的解释和说明,目的是方便程序的阅读。 4.2.2 程序设计步骤 1.分析问题,确定算法 这是程序设计中最重要的一步。设计人员必须认真、仔细地考虑系统需要解决的各种问题以及将来系统功能的进一步扩展,明确知道程序要解决的问题和接收、处理、发送的数据范围以及使用什么样的算法。

2.画流程图 流程图是用各种图形、符号、有向线段来直观地表示程序执行的步骤和顺序。它可使人们通过流程图的基本线索,对全局有完整的了解。 3.编写源程序代码 根据流程图用汇编语言指令实现流程图的每一个步骤,从而编写出汇编语言的源程序。 4.调试、测试程序 调试是利用仿真器等开发工具,采用单步、设断点、连续运行等方法排除程序中的错误,完善程序的功能。

4.2.3 源程序的汇编 1.手工汇编 手工汇编是通过手工方式查指令编码表,逐个把助记符指令“翻译”成机器码的过程。 2.机器汇编 机器汇编是在机器上使用汇编程序自动地进行源程序的汇编,最后得到机器码表示的目标程序。汇编与反汇编过程如图4-1所示。

图4-1 汇编和反汇编示意图

4.2.4 伪指令 1. ORG汇编起始伪指令 格式:ORG 16位地址 功能:规定该指令后面的源程序汇编后所产生的目标程序存放的起始地址。 [例4.2] ORG 0030H MAIN:MOV A,#00H

2. END汇编结束伪指令 格式:END 功能:通知汇编程序结束汇编。汇编时遇到END指令,则结束所有汇编工作,而END之后的所有指令将不予处理。 3. EQU赋值伪指令 格式:字符名称 EQU 数或汇编符号 功能:用于把数或汇编符号赋给字符名称。

[例4.3] COUNT EQU 34H ADDE EQU 18H MOV A,#COUNT ;34H→A ADD A,ADDE ;(A)+(18H)→A 这里,COUNT被赋值为34H,ADDE被赋值为18H。

4. DATA数值地址赋值伪指令 格式:字符名称 DATA 表达式 功能:DATA与EQU基本相同,即将DATA右边表达式的值赋给一个字符名称。二者的区别是:EQU必须先定义,后使用;而DATA可先使用后定义。因此,EQU一般放在程序的开始,而DATA可放在程序的任何地方。

5. DB定义字节伪指令 格式:[标号:] DB 项或项表 功能:把项或项表中的数据存入程序存储器从标号开始的连续地址单元中。

[例4.4] ORG 2000H TAB1:DB 10H,23H TAB2:DB “123” 汇编后 (2000H)=10H (2001H)=23H (2002H)=31H (2003H)=32H (2004H)=33H

6. DW定义字伪指令 格式:[标号: ] DW 项或项表 功能:与DB类似,不同的是DB用来定义存放8位数据,而DW定义存放的是16位数据。DW伪指令使数据的高字节存放到低地址单元,低字节存放到高地址单元。

[例4.5] ORG 1000H TAB:DW 1200H,4567H 汇编后 (1000H)=12H (1001H)=00H (1002H)=45H (1003H)=67H

7. DS预留存储区伪指令 格式:[标号:]DS 表达式 功能:从标号指定单元开始,定义一个大小为表达式的值的存储区,以备后用。 [例4.6] ORG 3000H DS 09H DB 10H,20H

8. BIT位地址赋值伪指令 格式:字符名 BIT 位地址 功能:将位地址赋予字符名。 [例4.7] M1 BIT 01H M2 BIT P1.0 汇编后,01H和P1.0的位地址90H分别赋给了M1和M2。