jnz和djnz_【HC89S003F4开发板】 10汇编指令
HC89S003F4开发板汇编指令
一、数据传递类指令
MOV、MOVC、MOVX
1、MOV,用于片内数据存储器中的数据传递指令中。
2、MOVC是与ROM之间的数据传送,而MOVX是与外部RAM数据传送;
3、MOV就是移动的意思,C就是Code,代码的意思,X就是eXternal,外部的意思 MOVC就是读代码存储器,MOVX就是读写外部存储器,即外部RAM ;
4、MOVC是读取ROM中的数据,只能读不能写(一般来说主要是用来读取常量或常量表) MOVX是读写外部扩展的RAM和扩展的IO口,可以读也可以写。
MOVX A,@RI
MOVX @RI,A
MOVX A,@DPTR
MOVX @DPTR, A
MOVC A,@A+DPTR
PUSH、POP
进出栈,栈是FILO(first in last out),先进后出
也就是把寄存器里的数据临时保存一下,相当与一个仓库。
需要注意,使用命令时,确认栈的位置,保证不溢出、不覆盖变量。
XCH、XCHD
XCH 交换双方的全部 8 位数。
XCHD 交换双方的低 4 位数。
二、算术运算类指令
INC、DEC、MUL、DIV
inc a 相当于 add a,1
dec a 相当于 sub a,1
优点 速度比sub或add指令快,占用空间小
这条指令执行结果影响AF、OF、PF、SF、ZF标志位,但不影响CF进位标志位。
mul 累加器ACC*寄存器b,保存在ACC
DIV 累加器ACC/寄存器b,保存在ACC
在c库里还有16位乘除的方法
EXTRNCODE (?C?IMUL) ;公式R4R5*R6R7,保存在R6R7,调库16字节
EXTRNCODE (?C?UIDIV) ;无符号,公式R4R5/R6R7,商保存在R6R7,余数在R4R5
EXTRNCODE (?C?SIDIV) ;有符号,公式R4R5/R6R7,商保存在R6R7,余数在R4R5
LCALL?C?IMUL ;跳转3字节
ADD、ADDC、SUBB
ADD A, R0 相当于A=A+R0
ADDC A, R0 相当于A=A+R0+Cy
SUBB A, R0 相当于A=A-R0-Cy,如果A小于R0,则Cy置位
三、逻辑运算类指令
ANL、ORL、XRL
与、或、异或
RL、RLC、RR、RRC
RL左移,RR右移,C带进/借位
SWAP
高四位和低四位交换
四、控制转移类指令
SJMP、AJMP、LJMP
无条件转移
SJMP -126—+129范围内转移
AJMP 2k范围内转移
LJMP 64K范围内转移
RET、RETI
RETI 是中断返回指令
RET 是子程序返回指令
ACALL、LCALL
转移到子程序,子程序执行后配合RET、RETI返回
CJNE、DJNZ、JNZ、JZ
CJNE 比较两值,不相等转移
DJNZ 减 1,不为 0 则转移
JNZ Jump if Not Zero 累加器为 1 则转移
JZ Jump if Zero 累加器为 0 则转移
五、布尔指令
JC、JNC、JB、JNB、JBC
JC Jump if Cy (有进位、即Cy=1,则跳转)
JNC Jump if Not Cy (有进位、即Cy=0,则跳转)
JBC Jump if Bit and Clear
JB Jump if Bit (为1则跳转)
JNB Jump if Not Bit (为0于则跳转)
jnz和djnz_【HC89S003F4开发板】 10汇编指令相关推荐
- iTOP-4412开发板-10.1寸屏幕硬件修改支持排线和HDMI
迅为iTOP-4412开发板-硬件- 金属框10.1寸屏幕硬件修改支持排线和HDMI 如果 iTOP-4412 开发板(精英版和全能版)同时 10.1 寸屏幕,如果 金属框 10.1 寸屏幕(如下图所 ...
- iTOP-4412开发板10.1寸[金属框]屏幕硬件修改支持排线和HDMI
注:iTOP-4412开发板(精英版和全能版)同时也有10.1寸屏幕,如果 金属框10.1寸屏幕(如下图所示)转接板使用的默认焊接方式 则默认只能使用HDMI线, 不能支持FPC排线. 本文档介绍,如 ...
- 三星UT-Exynos4412开发板10.1寸LVDS高清液晶屏
产品简介 UT-Exynos4412开发板是一款功能极为强大的高端ARM Cortex-A9开发平台,采用Samsung最新的Exynos4412(Exynos4412 Quad),主频达到1.4~1 ...
- 【嵌入式开发】 ARM 汇编 (指令分类 | 伪指令 | 协处理器访问指令)
作者 : 韩曙亮 博客地址 : http://blog.csdn.net/shulianghan/article/details/42408137 转载请著名出处 本博客相关文档下载 : -- A ...
- 全志A40I开发板10.1寸MIPI屏调试
天嵌A40i核心板,天嵌科技出品的又一款工业级核心板,采用4核ARM Cortex-A7处理器设计,每核主频高达1.2GHz. 注:本文所调试屏的参数是适配天嵌10.1寸电容触摸屏的,其他的mipi屏 ...
- S5PV210开发板用汇编设置栈和调用C语言
使用C语言前为什么要先用汇编设置栈? C语言程序运行时需要栈,因为C语言中的局部变量都是用栈来实现的,如果没有设置栈就使用C语言,局部变量就会落空,程序就会死掉,所以在使用C语言前,我们需要先在汇编编 ...
- 五一好礼70份免费送:示波器、开发板、焊台等!
关注.星标公众号,直达精彩内容 一. 前言 大家好,我是张巧龙,这一年来,感谢大家近期对公众号的支持,但是感谢不能停留在嘴上,所以,这次邀请了正点原子赞助.一起给大家送点礼品! 作为一名 电子/嵌入式 ...
- 元旦好礼50份免费送:示波器、开发板、焊台等!
关注.星标公众号,直达精彩内容 一. 前言 大家好,我是张巧龙,这一年来,感谢大家对公众号的支持,但是感谢不能停留在嘴上,所以,这次邀请了正点原子赞助.一起给大家送点礼品! 作为一名 电子/嵌入式 人 ...
- 【4412嵌入式开发板学习笔记】认识uboot -迅为电子资料分享
重要说明:这份笔记不是4412开发配套的,是我在网上看视频的时候下载上课老师的笔记后修改的.所以我试了一下笔记上的uboot命令,有些无法使用,可能是uboot版本问题或者文件系统问题.具体原因我目前 ...
最新文章
- Apache2.2中文手册
- 协程 线程 进程的一点理解
- mysql 开源 ~ canal+otter系列(2)
- Guide: Solr performance tuning--转载
- ICLR 2020 | 多模态下使用图片信息显著增强机器翻译效果
- 手把手教你java快速过滤关键词
- 多年以后重发:多线程安全的变量模板
- 信息学奥赛一本通C++语言——1007:计算(a+b)×c的值
- php手册中点击下载的功能,PHP实现文件下载功能
- python数据获取及预处理_python数据预处理(入门)
- 页面中,通过css设置文本不能被选中
- 【咀嚼C语言】二维数组找鞍点
- 每日站会怎么开才好?——你的站会姿势正确吗?
- unity webPlayer
- 安居客头部买房部分书写
- 资料:线性代数与空间解析几何知识点全汇总
- Java程序,判断一个字母是元音还是辅音
- Shader实现高光反射
- 搭建e(fx)clipse-JavaFX E4 RCP平台
- 推荐一款搜索开源代码的神器 :Kooder!