单片机信息网:深圳市今科电子有限公司
网站地图 RSS订阅
高级搜索 收藏本站
会员中心 欢迎投稿
首页 | 业界动态 | 解决方案 | 技术文献 | 下载中心 | 单片机学习 | 单片机原理 | 单片机编程 | 单片机设计 | 单片机开发 | 技术专题 | 单片机论坛 |单片机博客| 联系我们
单片机新闻 | 单片机学习 | 单片机编程 | 单片机设计 | 单片机开发 | 单片机原理 | 单片机解密 | 芯片解密 | IC解密 | 单片机方案 | 51单片机 | AVR单片机 | PIC单片机
单片机程序实例大全 | 潜入式系统 | PCB设计 | 单片机资料下载 | 工具/软件下载 | 技术经验分享 | 单片机技术人生 | IC资料下载 | 数字电路 | 模拟电路 | 单片机空间
当前位置:主页>单片机学习>51系列单片机>文章内容
汇编语言基础
来源:单片机信息网 作者: 发布时间:2008-03-10 阅读次数: 【大 中 小】【收藏本文】 【打印

第十九课:汇编语言基础


在本站的网站学堂的第一至十八节,详细的讲解了51单片机一些底层的知识,通过前面的学习,我们对51单片机的硬件结构已有了一定的了解,从这节课开始,我们将与大家一起来学习51单片机的汇编指令系统。

所谓指令,就是规定计算机进行某种操作的命令。

计算机按程序一条一条地依次执行指令,从而完成指定任务。一条指令只能完成有限的功能,为使计算机完成一定的或者复杂的功能,就需要一系列指令。一般来说,一台计算机的指令越丰富,寻址方式越多,且每条指令的执行速度越快,则它的总体功能就越强。

程序设计语言:

机器语言
汇编语言
高级语言

我们学习的80C51单片机共有111条指令,这111条指令共有七种寻址方式。其中:

数据传送类指令  29条

算术运算类指令  24条

逻辑运算及移位类指令  24条

控制转移类指令  17条

位操作指令      17条

这111条指令的具体功能我们在后面的课程中将会逐条的与大家进行分析。

由于计算机只能识别二进制数,所以计算机的指令均由二进制代码组成。为了阅读和书写的方便,常把它写成十六进制形式,通常称这样的指令为机器指令。现在一般的计算机都有几十甚至几百种指令。显然即便用十六进制去书写和记忆也是不容易的,为了便于记忆和使用的方便,制造厂家对指令系统的每一条指令都给出了助记符。助记符是根据机器指令不同的功能和操作对象来描述指令的符号。由于助记符是用英文缩写来描述指令的特征,因此它不但便于记忆,也便于理解和分类。这种用助记符形式来表示的机器指令称为汇编语言指令。

汇编语言有如下特点:

① 助记符指令和机器指令一一对应,所以用汇编语言编写的程序效率高,占用存储空间小,运行速度快,因此汇编语言能编写出最优化的程序。

② 使用汇编语言编程比使用高级语言困难。因为汇编语言是面向计算机的,汇编语言的程序设计人员必须对计算机硬件有相当深入的了解。

③ 汇编语言能直接访问存储器及接口电路,也能处理中断,因此汇编语言程序能直接管理和控制硬件设备。

④ 汇编语言缺乏通用性,程序不易移植,各种计算机都有自己的汇编语言,不同计算机的汇编语言之间不能通用。

汇编指令的格式

MCS-51汇编语言的语句格式表示如下:

  〔<标号>〕:<操作码>〔<操作数>〕;〔<注释>〕

  即一条汇编语句是由标号、操作码、操作数和注释四个部分所组成,其中方括号括起来的是可选择部分,可有可无,视需要而定。

指令通常两部份组成:操作码、操作数

操作码:是由助记符表示的字符串,操作码其实就是告诉我们这条指令是起什么样的一个功能,是加?减?传送?还是控制?等等。

操作数:是指参加操作的数据或者是数据地址。

注释:为了便于我们阅读程序,通常我们在指令的后面都会加上注释。

标号:用来表示子程序名称或程序执行条件跳转时的程序跳转地址,实际上是表示一个地址值。

在80C51指令系统中,操作数可以是1、2、3个,也可以没有。不同功能的指令,操作数作用也不同。例如,传送类指令多数有两个操作数,写在左面的称为目的操作数(表示操作结果存放的单元地址),写在右面的称为源操作数(指出操作数的来源)。

操作码与操作数之间必须用空格分开,操作数与操作数之间必须用逗号“,”分开。带方括号的项可有可无,称为可选项。由指令格式可见,操作码是指令的核心,不可缺少。

例如一条传送指令的书写格式如为:MOV  A,3AH   ;(3AH)A
它表示将3AH存储单元的内容送到累加器A中。

指令的长度

所谓指令的长度,就是描述一条指令所需要的字节数,用一个字节能描述的指令我们叫1字节指令,同理,用两个字节描述的叫2字节指令,用三个字节描述的指令就叫3字节指令。在这里我们对80C51的111条指令进行了分类:
1字节指令共有49条
2字节指令共有45条
3字节指令共有17条
到底哪条指令是1字节、2字节或者3字节指令,在我们后面的指令表中都可以查阅到的。

这里有一个问题请大家引起注意,在前面的课程中,我们学习过指令计数器PC,PC是一个16位的计数器,那么这个指令计数器是怎样来计数的呢?我们的指令有1字节、2字节、3字节指令。是不是每执行一个字节,这个指令计数器PC就自动加 1?答案是错误的!!实际上,PC始终是跟踪着指令的,并不是以字节数来相加。在我们存放程序的ROM中,是一个字节一个字节的向后执行,但程序计数器 PC并不是每加一个字节就加1,它是对特定的某一条指令执行完了之后,相应的程序计数器PC才加1,那么这条指令可能是1个字节,也可能是2个或者3个字节。这个大家要引起重视。

在学习指令系统时,先要了解某些符号的意义,现说明如下:

Rn        :当前选中的工作寄存器组R0-R7(n=0-7)。它在片内数据存储器中的地址由PSW中的RS1和RS0确定,可以是00H-07H(第0组)、08H-0FH(第1组)、10H-17H(第2组)、18H-1FH(第3组)。

Ri        :当前选中的工作寄存器组中可作为地址指针的两个工作寄存器R0和R1(i=0或i=1)。它在片内数据存储器中的地址由RS0及RS1确字,分别为00H、01H;08H、09H;10H、11H;18H、19H。

Direct    :8位片内RAM单元(包含SFR)的直接地址

#data     :代表指令中8位的常量数据

#data16   :代表指令中16位的常量数据

addr16    :LCALL与LJMP所使用的16位目的地址

addr11    :ACALL与AJMP所使用的11位目的地址

rel       :指程序遇条件跳跃时的相对地址,往前最多可以跳128个字节,往后最多可以跳127个字节。

bit       :特殊目的寄存器或内部数据RAM中可直接寻址的位。

@         :间接寻址方式中,表示间址寄存器的符号

/         :位操作指令中,表示对该位先取反再参与操作,但不影响该位原值。

X         :片内RAM的直接地址或寄存器

(X)     :在址接寻址方式中,表示直接地址X中的内容;在间接寻址方式中,表示由间址寄存器X指出的地址单元中的内容。

→       :指令操作流程,将箭头左边的内容送入箭头右边的单元内。 

←       :指令操作流程,将箭头右边的内容送入箭头左边的单元内。

上一篇:51单片机的延时及时序分析   下一篇:汇编语言及汇编过程

标签:汇编语言 基础 点此搜索本站更多相关信息...搜索更多相关内容..

您可能还感兴趣的内容: 深圳今科电子单片机解密、IC解密服务 今科电子单解机、IC解密业务是怎样的流程?

此页的访问者还关注了下面这些相关资讯


·51单片机的延时及时序分析
·汇编语言及汇编过程
·51单片机执行指令的过程
·汇编程序的基本结构
·51单片机的复位
·51单片机的寻址方式
·51单片机的中断系统
·第二十三课:数据传送类指令分析
·第十三课:51单片机CPU的内部结构
·第二十四课:算术运算类指令分析
·第十一课:存储器的存储原理
·第二十五课:逻辑运算及移位指令分析
·第二十六课:控制转移类指令分析
·第十课:编码及译码器工作原理
·第二十七课:布尔变量操作指令分析
·第九课:8051单片机的存储器结构
·第二十八节:伪指令分析
·第八课:8051单片机I/O引脚工作原理
·第七课:51单片机的引脚
·基础实验一:一个外部中断实验
·第六课:51单片机的结构及其组成
·第五课:常用逻辑电路
·第四课:计算机中数的表示及运算
·第三课:单片机相关常用名词解释
·第二课:MCS-51单片机简述
·第一课:初识单片机
·MCS51单片机教程 前 言
·基于KEIL 51的单片机开发系统设计
·AT89C2051单片机与MT8880接口设计
·单片机C语言编程应注意的若干问题
·51单片机的串行口扩展方法
·单片机应用产品的PROTEUS设计与仿真
·8051单片机中DPTR的扩展设计
·51单片机整数二一十进制转换的快速算法
·51单片机模拟SPI总线的方法
·51单片机串行通讯中波特率的自动检测
·单片机RTOS随想曲
·单片机键盘输入编程
·51单片机I/O口使用经验
·在C51中变量的空间分配几个方法


版权声明:
( 更多版权详述 | 隐私政策 )

1、凡本网注明“来源:单片机信息网”或“单片机论坛”的文字、图片和音视频作品,版权均属深圳市今科电子有限公司所有,任何媒体、网站或个人未经本网书面授权不得转载、链接、转贴或以其他方式使用;已经本网书面授权的,在使用时必须注明“来源:单片机信息网”或“单片机论坛””。
2、本网未注明“来源:单片机信息网”或“单片机论坛”的作品均为转载稿,本网转载稿件只为传递更多信息,并不意味着认同其观点或真实性。如其他媒体、网站或个人转载使用,必须保留本网注明的“稿件来源”,并自负法律责任。
3、对于单片机信息网通过单片机论坛发布的作品,本网受著作权人委托禁止任何媒体、网站或个人在未经书面授权的情况下转载使用。
4、为维护自身权益、尊重作者版权,单片机信息网特委托深圳市律师协会为本网站法律顾问。对于违反本声明的,单片机信息网律师将依法追究其责任;对于刊载作品涉及版权等问题的,请作者在两周内与网站管理或张朝阳律师联系。
责任编辑:今科电子
双击复制本文网址,发送给您QQ/MSN上的朋友:
[收藏] [推荐] [评论(0条)] [返回顶部] [打印本页] [关闭窗口]
用户名: 新注册) 密码: 匿名评论
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。

·用户发表意见仅代表其个人意见,并且承担一切因发表内容引起的纠纷和责任
·本站管理人员有权在不通知用户的情况下删除不符合规定的评论信息或留做证据
·请客观的评价您所看到的资讯,提倡就事论事,杜绝漫骂和人身攻击等不文明行为
§最新评论
今科热门解密系列
·PIC芯片DSP系列单片机解密PIC芯
·Freescale单片机解密飞思卡尔芯
·飞思卡尔(Freescale)单片机解密/
·pic18f系列单片机解密
·三星(Samsung)系列单片机极速解
·飞林Feeling芯片系列MCU单片机/I
·MICROCHIP微芯(PIC)系列单片机/M
·单片机破解的常用方法及应对策略
·IC卡预付费电度表的安全及防范技
·单片机解密 单片机解密方法 单片
·PHILIPS系列单片机解密
·独家STC单片机解密
·我对红外遥控信号的解码思路
·51系列单片机解密(数分钟搞定)
·芯片解密业务流程介绍
·单片机解密后提供什么文件?
·单片机解密后为何要提供厂家的专
·芯片是如何被解密的?
·SST系列MCU单片机/IC/芯片解密
·INTEL系列单片机/IC/芯片解密
·ISSI系列MCU单片机IC破解芯片解
·ZILOG系列MCU单片机IC破解芯片解
·MOTOROLA系列MCU单片机IC破解芯
·LG(HYUNDAI系列MCU单片机/IC破
·MCPLD/EPLD系列MCU单片机IC破解
·新茂系列MCU单片机IC破解芯片解
·PHILIPS系列MCU单片机IC破解芯片
·MXIC系列MCU单片机IC破解芯片解
·(ATMEL)51系列MCU单片机IC破解芯
·华邦芯片系列MCU单片机/IC/芯片
·(MICROCHIP)微芯(PIC)系列MCU单
·CYPRESS系列MCU单片机IC破解芯芯
·Sinowealih系列MCU单片机IC破解
·Tenx系列MCU单片机IC破解芯片解
·松翰(SONIX)系列MCU单片机IC破解
·义隆(EMC)系列MCU单片机IC破解
·合泰(HOLTEK)系列MCU单片机IC破
·麦肯(MDT)系列mcu单片机IC破解芯
·今科单片机解密服务
·单片机程序开发
热点技术文章文献
·单片机程序实例大全
·基于51单片机的音乐播放程序
·51单片机模拟SPI总线的方法
·用AT89C51实验板的两位数码管显
·51单片机控制继电器的设计及源代
·51单片机汇编指令表
·51单片机串口调试程序一列
·实时时钟DS1302读写程序(C51)
·89S51看门狗功能的使用方法
·带有时间设置和秒显示的数字闹钟
·单片机键盘输入编程
·单片机应用编程技巧
·红外遥控程序设计的若干问答
·51时钟源程序一例
·PIC CCS C语言程序范例
·P1口八个LED灯做三路流水灯实验
·51单片机RTL8019AS网卡驱动程序
·汇编语言及汇编过程
·C语言中嵌入汇编语言集锦
·51单片机 Keil C 延时程序的简单
·利用80C31单片机串行口实现多个L
·51堆栈操作详解
·用C51实现单片机的中文输入法
·给C语言(主要是单片机的C)初学者
·51单片机的寻址方式
·第八课:8051单片机I/O引脚工作原
·PIC单片机的C语言使用
·用DS18B20构成测温系统
·初学者编程最简练的指导
·第五课:常用逻辑电路
今科推荐产品
·51系列单片机解密(数分钟搞定)
·今科单片机解密服务
·单片机程序开发
·小家电(厨卫电器)系列产品
·灯饰控制系列产品
·四键遥控器系列产品
·红外遥控器系列产品
相关技术文献资讯
·51单片机的延时及时序分析
·汇编语言及汇编过程
·51单片机执行指令的过程
·汇编程序的基本结构
·51单片机的复位
·51单片机的寻址方式
·51单片机的中断系统
·第二十三课:数据传送类指令分析
·第十三课:51单片机CPU的内部结构
·第二十四课:算术运算类指令分析
·第十一课:存储器的存储原理
·第二十五课:逻辑运算及移位指令
·第二十六课:控制转移类指令分析
·第十课:编码及译码器工作原理
·第二十七课:布尔变量操作指令分
·第九课:8051单片机的存储器结构
·第二十八节:伪指令分析
·第八课:8051单片机I/O引脚工作原
·第七课:51单片机的引脚
·基础实验一:一个外部中断实验
·第六课:51单片机的结构及其组成
·第五课:常用逻辑电路
·第四课:计算机中数的表示及运算
·第三课:单片机相关常用名词解释
·第二课:MCS-51单片机简述
论坛最新讨论资讯
芯片解密常见问题
· 什么是单片机?
· 单片机要如何加密?
· 单片机芯片是如何被解密的?
· 单片机解密后提供什么文件?
· 芯片解密为何用专用格式文档?
· 芯片解密是怎样的业务流程?
首页 - 隐私政策 - 版权申明 - 网站地图 - 产品中心 - IC解密中心 - 企业文化 - 代理加盟 - 公司简介 - 人才招聘 - 常见问题 - 我要投稿 - 联系我们 - 返回顶部
[单片机信息网] .© 2006-2009 版权所有,严禁非法复制与建立镜像.运营商:[今科电子] 公司地址:中国.深圳/上海 E-Mail:renbangent#126.com sales#techmcu.com(换#为@)
深圳公司 电话热线:+86 0755-82964200 82964201 82964700 传真:+86 0755-82964432 技术支持:13684994966 业务QQ: 501995683 联系人:黄/陈小姐(工程师) 罗先生(高工)
上海公司 电话热线:+86 021-63062380 15001885509   传真:+86 021-63062380-6   技术支持:15001885509 业务QQ:xxxxxxxx   联系人:郑小姐(业务) 陆工(工程师)
Optimized for 1024x768 to Firefox,Opera and MS-IE6 or higher,Template designed by: Berlin Lee.Web Support[FuAn Network] ICP Record No.:07053756 Webmaster