PIC中档单片机汇编指令详解(7)

发布者:lidong4069最新更新时间:2016-05-20 来源: eefocus关键字:PIC  中档单片机  汇编指令 手机看文章 扫描二维码
随时随地手机看文章
GOTO 程序无条件跳转到指定的地址

语法形式:GOTO m

操作数:m为11位立即数指定的目标地址

执行时间:2个指令周期

执行过程:

m→PC【10:0】

PCLATH【4:3】→PC【12:11】

状态标志影响:无

说明:程序无条件立即强行跳转到目的地址处继续执行。目的地址由本指令内含的11位地址码和特殊寄存器PCLATH中的【4:3】一起构成完整的13位地址。

指令范例:

ORG 0x000 ;伪指令指定程序的起始地址

GOTO Main ;程序跳转到标号指定的位置处继续执行

MOVLW W寄存器赋立即数

语法形式:MOVLW k

操作数:k为8位立即数

执行时间:一个指令周期

执行过程:k→W

状态标志影响:无

说明:该指令对W寄存器赋一个初值。任何其他数据寄存器如果要赋一个立即数值,必须通过W寄存器传送。

指令范例:

MOVLW 0x55 ;【W】=0x55

MOVWF Tmp ;【Tmp】=【W】=0x55

ADDLW W寄存器和8位立即数相加

语法形式:ADDLW k

操作数:k为8位立即数

执行时间:一个指令周期

执行过程:【W】+k→W

状态标志影响:Z DC C

说明:W寄存器的值和8位立即数相加,结果放入W寄存器内

指令范例:

MOVLW 0xAA ;W=0xAA

ADDLW 0x11 ;W=0xAA+0x11=0xBB

SUBLW 立即数减去W寄存器

语法形式:SUBLW k

操作数:k为8位立即数

执行时间:一个指令周期

执行过程:k-【W】→W

状态标志影响:Z DC C

说明:必须注意W寄存器在这条指令中是减数

如果k=W,相减结果为0,则Z=1

如果k>W,没有借位发生,则C=1

如果k

在PIC单片机内部这条减法指令的执行是先对W寄存器求补码,然后和被减数k相加,所以在判断是否有借位标志时要千万小心

指令范例:

MOVLW 0x23 ;W=0x23

SUBLW 0x32 ;W=0x32-0x23=0x0f,k>W所以C=1

IORLW W寄存器和立即数做逻辑或操作

语法形式:IORLW k

操作数:k为8位立即数

执行时间:一个指令周期

执行过程:【W】|k→W

状态标志影响:Z

说明:W寄存器和8位立即数相或,结果放入W寄存器内。按照逻辑或有1出1的法则,此指令可以把W寄存器的任意位设置成数据1

指令范例:

IORLW b‘00001111’ ;W寄存器低4位置1

ANDLW W寄存器和立即数做逻辑与操作

语法形式:ANDLW k

操作数:k为8位立即数

执行时间:一个指令周期

执行过程:【W】&k→W

状态标志影响:Z

说明:W寄存器和8位立即数相与,结果放入W寄存器内。按照逻辑与有0出0的法则,可以把W寄存器的任意位置清0

指令范例:

ANDLW b‘00001111’ ;W寄存器高4位清0

XORLW W寄存器和立即数做逻辑异或操作

语法形式:XORLW k

操作数:k为8位立即数

执行时间:一个指令周期

执行过程:【W】^k→W

状态标志影响:Z

说明:W寄存器和8位立即数异或,结果放入W寄存器内。按照逻辑异或的法则,任何数和1异或,结果为其反码;任何数和其自身异或,结果为0。所以该指令可以把W寄存器的任意位数反转,或者判断W寄存器的内容是否为特定值

指令范例:

例1:任意数据按位取反

XORLW b‘11111111’ ;取W寄存器8位反码

例2:判断W寄存器内容是否为特定值

XORLW 0x34 ;判断W=0x34?

BTFSC STATUS,Z ;W不等于0x34,则跳过下条指令

GOTO W34 ;W等于0x34,转去执行相关操作

关键字:PIC  中档单片机  汇编指令 引用地址:PIC中档单片机汇编指令详解(7)

上一篇:PIC中档单片机汇编指令详解(1)
下一篇:PIC中档单片机汇编指令详解(2)

推荐阅读最新更新时间:2024-03-16 14:54

PIC16F877A PICC AD转换程序
//软件思路:选择RAO做为模拟输入通道; // 连续转换4次再求平均值做为转换结果 // 最后结构只取低8位 // 结果送数码管的低3位显示 #include pic.h //包含内部资源预定义 __CONFIG(0x1832); //芯片配置字,看门狗关,上电延时开,掉电检测关,低压编程关,加密,4M晶体HS振荡 const char TABLE ={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0X82,0XF8,0X80,0X90}; //定义常数0-9的数据表格 void DELAY(); //delay函数申明
[单片机]
Microchip推出PIC32MX 32位单片机产品组合
Microchip Technology Inc.(美国微芯科技公司),推出采用64/16 KB、256/64 KB和512/128 KB闪存/RAM配置的全新系列PIC32MX3/4单片机(MCU)。为支持这些新型MCU,Microchip还提供了针对连接、图形、数字音频和通用嵌入式控制设计的全面软件和工具。 新推出的MCU是对最受欢迎的PIC32MX3/4系列高性能32位单片机的扩展。它们以较低的成本提供了更高的RAM存储选项和集成度更高的外设。PIC32MX3/4具有28 × 10位ADC和5个UART、105 DMIPS性能、串行外设、图形显示、电容式触摸、连接和数字音频支持。 Microchip MCU32部门副
[单片机]
PIC32MZ】OLED12864 I2C显式示例
本篇主要讲述如何使用PIC32MZ来点亮OLED12864。 OLED12864可以控制一个一个像素点,所以需要自建字库,有专门生成的软件,字库为字母字符,放到最后面。注意不同12864排列或者共极不同,则需要自行取模。 本片需要调用I2C通信中的基础代码,需要delay和i2c-Hardware,以下不再贴这部分代码。 第一部分是字模文件 codetab.h #ifndef _CODETAB_H #define _CODETAB_H /***************************16*16 Chinese, common gnd - column style - reverse output*****
[单片机]
【<font color='red'>PIC</font>32MZ】OLED12864 I2C显式示例
PIC单片机的 程序存储器,数据存储器,EEPROM区别
PIC的程序存储器是FLASH存储器,主要存储程序代码,掉电不丢失。 数据存储器是SRAM,主要存储一些程序的变量,掉电丢失。 EEPROM一般存储程序中的重要数据,掉电也不丢失。 区别: FLASH: 只能块擦除(叫块擦除更准确吧,原文是BLOCK),举例说明:比如你用的FLASH的BLOCK是512个字节(不同的FLASH大小不同),那么只有擦除过(所有位写 1 )的BLOCK才能重新写入,意思就是只能从 1 写到 0 ,如果要从 0 改到 1 必须整块擦除,而且擦除时的速度相对写入和读出要慢很多。FLASH主要用于程序存储。 EEPROM; 可以单字节操作,没有块擦除的要求。相对FLASH更为灵
[单片机]
PIC单片机USB MSC的应用:用 MMC/SD 卡作为储存设备进行读写
单片机的USB接口,通常用法, 1)HID 是Human Interface Device的缩写,由其名称可以了解HID设备是直接与人交互的设备,例如键盘、鼠标与游戏杆等。不过HID设备并不一定要有人机接口,只要符合HID类别规范的设备都是HID设备。 2)CDC 虚拟串口,可与PC机直接联机通讯,如同RS232。 3)USB MSC (Mass Storage class) MSC是一种计算机和移动设备之间的传输协议,它允许一个通用串行总线(USB)设备来访问主机的计算设备,使两者之间进行文件传输。设备包括:移动硬盘,移动光驱,U盘,SD、TF等储存卡读卡器,数码相机,手机等等。 .......... 注意: 每
[单片机]
<font color='red'>PIC</font><font color='red'>单片机</font>USB MSC的应用:用 MMC/SD 卡作为储存设备进行读写
PIC16F877A单片机 (中断与定时器Timer2)
1 基本原理 2 实现代码 主要根据定时器2的逻辑框图和中断的逻辑框图来编写代码,这样代码的可读性强,也便于理解。但有些寄存器在框图中可能没有说明,所以也需要仔细阅读定时器0的官方文档,即基本原理部分。 /*----------------函数功能: 中断 定时器2 --------------------------*/ #include pic.h // 调用PIC16f87XA单片机的头文件 //#include delay.h //调用延时子函数 __CONFIG(0xFF32);//芯片配置字,看门狗关,上电延时开,掉电检测关,低压编程关 //__CONFIG(HS&WDTDIS&LVPD
[单片机]
<font color='red'>PIC</font>16F877A<font color='red'>单片机</font> (中断与定时器Timer2)
基于PC及和PIC16F877芯片实现情感表情机器人的研究与设计
1、引言 十多年前“诡异谷”的理论制约了类人机器人的发展,但随着科技的发展,人们再次把关注的眼光投向了“更像人类的机器人”身上,机器人博览会上的saya已经到了以假乱真的地步,制作外形和行为方式更接近于人类的机器人已经成为了新的焦点和热点。在国外的一些科学家已经取得了一定的成绩,但在国内,对于表情机器人的研究还处于初级阶段,为了能在08年的奥运会上看到我们自己制作的机器人解说员,北京科技大学的王志良老师的课题组正致力于此项研究并取得了一定的成果。 2、机器人头部的设计要求 本设计的目的是设计一个仿人的机器人头部,以实现各种表情,来表达机器人内在的情感状态,最终使机器人能通过丰富生动的表情与人进行自然流畅的情感交流。既
[机器人]
基于PIC单片机的电动自行车控制系统设计
摘 要:介绍以单片机PICl6F72为核心的电动自行车用无刷直流电动机控制系统的设计。该系统采用电流与速度双闭环控制的结构,其中电流调节器用传统的PI调节器,速度调节器为改进的PI调节器。实验验证了此设计方案的可行性和优越性,即控制电路简洁,器件少,成本低,保护措施可靠,提高了系统的控制精度。该设计对无刷直流电机在其他领域的应用有一定的帮助和借鉴,具有广泛的现实意义。该系统速度环采用改进型的PI调节器控制,且通过软件运用算法测速,实现转速反馈,既简化电路又节省成本。 关键词:电动自行车;控制系统;无刷直流电动机;PIC16F72;PID控制 0 引 言 随着社会的不断进步,人们生活水平的提高,环境保护和能源节约问题已经越来越
[工业控制]
基于<font color='red'>PIC</font><font color='red'>单片机</font>的电动自行车控制系统设计
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved