文档章节

51单片机汇编指令

liuxiaofan
 liuxiaofan
发布于 11/08 16:41
字数 676
阅读 8
收藏 0

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

汇编指令

汇编起始地址命令 ORG

  • 格式:ORG 地址
  • 功能:规定程序的起始地址,省略时从0000H开始

汇编结束命令 END

  • 格式:END
  • 功能:源程序汇编终止。

汇编赋值指令 EQU

  • 格式:字符名称 EQU 表达式
  • 功能:将表达式的值赋给字符名称。表达式可以是常数、地址、符号、表达式

定义数据命令: DB、DW、DD

  • 格式:[标号:] DB字节数据项表
  • 功能:从指定地址(即标号)开始,在程序存储器中定义字节数据。读完一个,偏移量加1
  • 格式:[标号:] DW字数据项表
  • 功能:从指定地址(即标号)开始,在程序存储器中定义16位字数据。高8位在低地址单元,低8位在高地址单元。读完一个,偏移量加2
  • 格式:[标号:] DD双字数据项表
  • 功能:从指定地址(即标号)开始,在程序存储器中定义32位字数据。读完一个,偏移量加4

位定义命令:BIT

  • 格式: 字符名称 BIT 位地址
  • 功能:将位地址赋给字符串名称。位地址为绝对地址或符号地址。
  • 例如: HULED BIT P1.0

跳转指令 SCALL, ACALL, LCALL

  • 功能:SCALL范围是256,ACALL范围2K,LCALL范围64K都可以。一般保险起见用LCALL
  • 格式:LCALL

信号取反指令 CPL

  • 格式: CPL 位地址
  • 功能:把高低电平取反1变0,0变1
  • 例如: CPL P1.0

清零 CLR

  • 例如 CLR A ; 累加器清零

置位1 SETB

  • 例如:SETB TF1 ; TF1 位置为1

不等于1跳转 JNB,等于1跳转 JB

  • 例如:JNB TF1 , WAIT ; TF1不为1,跳转到WAIT
  • 例如:JB TF1 , WAIT ; TF1为1,跳转到WAIT

短转移指令 SJMP

  • 例如: SJMP LOOP ; 跳转到LOOP

中断返回 RETI,RET

  • 中断子程序,使用这条指令,直接返回中断前的程序处理
  • RET从子程序返回

RL/RR——循环左移/循环右移

  • 把A里的数,循环左移或右移,比如:11111110,运行一次指令后变为11111101

AJMP——无条件跳(11位地址)/LJMP——无条件跳(16位地址)

  • 比如 AJMP LOOP,表示无条件跳转到LOOP

DJNZ——递减后若不为零跳

  • DJNZ R1, $ ,意为R1不为零,跳转到本指令,直到R1为零

© 著作权归作者所有

下一篇: openstack
liuxiaofan
粉丝 0
博文 95
码字总数 38736
作品 0
枣庄
后端工程师
私信 提问
单片机、CPU、指令集和操作系统的关系

作者:zhongjin616 1> 首先讨论各种单片机与操作系统的关系 说到单片机,大家第一时间想到的应该是51单片机,对吧。不错,更高级一点的AVR,把他称为单片机,我们也还觉得可以接受。那么再高...

xiaogong1688
2018/06/29
0
0
51 avr pic arm单片机分别应用于哪些方面?

这些单片机都倾向于哪方面编程,是不是原理相同,但编程的语法和所用的C函数都不同呢? 单片机是不是和CPU一样,不同的CPU,汇编指令也不一样?

个性签名
2015/02/24
22
0
[Beautifulzzzz的博客目录] 快速索引点这儿O(∩_∩)O~~,红色标记的是不错的(⊙o⊙)哦~

3D相关开发 [direct-X] 1、direct-X最小框架 [OpenGL] 1、环境搭建及最小系统 [OpenGL] 2、企业版VC6.0自带的Win32-OpenGL工程浅析 51单片机 [51单片机] 1602液晶显示控制代码 [51单片机] 1...

史迪奇2号
2017/08/01
0
0
单片机C语言编程学习简介与第一个C语言程序

C语言是面向过程的,而C++是面向对象的 C和C++的区别: C是一个结构化语言,它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到...

小辰带你看世界
2018/05/26
0
0
51单片机连接ESP8266串口WiFi模块

烧录固件 引脚连接 烧录固件 打开烧录软件,选择配置选项卡,点击第二栏的小齿轮图标 - 加载固件地址 点击其他选项的选择栏,取消选中,只选择第二个选项(固件地址) 返回操作选项卡,选择正...

pop1586082213
2017/01/18
0
0

没有更多内容

加载失败,请刷新页面

加载更多

类比思想歪解Java线程

在操作系统的概念里,有内核态,用户态。其实,操作系统的最小执行单位是进程,而进程是分类型的,有两种类型,内核进程,用户进程。 内核进程由操作系统启动时创建,用户进程是由用户程序启...

萧默
45分钟前
2
0
Git推送错误“ [[远程拒绝]主机->主机(分支当前已签出)”)

昨天,我发布了一个有关如何将Git存储库从我的一台计算机克隆到另一台计算机的问题 , 如何从另一台计算机“ git clone”? 。 现在,我可以成功地将Git存储库从源(192.168.1.2)克隆到目标...

javail
55分钟前
4
0
Selenium 4.0 Alpha更新日志

早在2018年8月,整个测试自动化社区就发生了一件重大新闻:Selenium的创始成员Simon Stewart在班加罗尔Selenium会议上正式确认了Selenium 4的发布日期和一些重要更新。 Selenium 4.0 Alpha版...

八音弦
今天
7
0
2、编写程序求Sn=a+aa+aaa+…+aa…aa的值,其中a是1—9之间的一位数字,n表示 a的位数

//编写程序求Sn=a+aa+aaa+…+aa…aa的值,其中a是1-9之间的一位数字, //n表示 a的位数 #include<stdio.h> int main() { int a,n,i,Sn=0,Z=0; printf("please intput a:\n"); scanf("%d",&a......

201905021729吴建森
今天
5
0
Git中的HEAD是什么?

您会看到Git文档说出类似 分支必须在HEAD中完全合并。 但是到底什么是Git HEAD ? #1楼 了解正确答案的一种好方法是运行git reflog HEAD ,您可以获得HEAD所指向的所有位置的历史记录。 #2楼...

技术盛宴
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部