PIC8位在PICC中的数据类型

2020-02-13来源: eefocus关键字:PIC8位  PICC  数据类型

简介:PIC8位MCU的内存都是8位字节结构的,所以PICC中对于数据的划分都是以8位为基础的。



在汇编中,我们对一个地址为0X20的内存附值:


movlw 255;


movwf 0x20;


但一个内存是8位结构,能表示最大的数是255。要是超过了会怎么样呢?


movlw 256;


movwf 0x20;


通过DEBUG后,可以看出0X20中的值不是256,而是0了。


这里可以看出PIC处理器计算过程是当计算结果超过内存能容纳的最大数(也就是所谓溢出),则自动抛弃最高位。


如下:


255 - 256


11111111-100000000


256的2进制有9位,于是PIC处理器就自动抛弃最高位1,剩下的8个0放入内存,于是就成了0了。这过程是由硬件自动完成的。


在PICC中象这样的概验比比都是。


如:char x;


for(x=255;x--;){;}


是完成255个循环。


要是for(x=256;x--;){;}


则是0个循环。


因为PICC中定义CHAR类型数据是8位。


再如:int x;


for(x=65537;x--){;}


则是只循环一次。因为PICC中INT数据是16位,占2个存储单位。


如上所述,在规划一个程序之前要考虑程序中可能涉及到的最大计算量来定义数据类型,不然将会发生溢出,导致数据混乱。


但也不可为了简便,全用长结构的类型来申明数据类型,不然会导致计算时间慢,空间占用多。


如X可能大于255,但不会大于65535,那么申明:unsigned int x;


如果X可能会是负数就一定要定义int x;


同上要是X可能大于65535,那么就得定义long x;


浮点数是一个很特殊的类型,不需要了解它的构造,只需要了解它是一个24位或32位的存储结构,是一个能表示小数的数据类型,浮点表示的数字范围极大,所以在用浮点类型时候,不需要考虑是否溢出的问题。


关键字:PIC8位  PICC  数据类型 编辑:什么鱼 引用地址:http://news.eeworld.com.cn/mcu/ic488107.html 本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:pic单片机链接描述文件(.lkr)含义
下一篇:PICC中主程序和中断调用同一个子程序的问题

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

如何利用16位PIC18F458单片机实现LCD显示?
本文介绍一种新型的电网质量检测系统中显示测量结果的液晶显示系统,它主要由PIC18F458和液晶显示模块MGLS12864组成。PIC18F458单片机是美国微芯公司推出的16位RISC指令集的高级产品,与LCD接口方便。液晶显示器MGLS12864是基于两片HD61202和一片HD61203所构成的128×64点阵液晶显示器;只要提供电源就能产生点阵驱动信号和各种同步信号。其中HD61202是一种点阵图形式液晶显示驱动器,它可以直接与16位微处理器相连,与HD61203配合对LCD进行行、列驱动。1PIC18F1458的性能特点PIC18F458单片机是一种高性能的RISC CPU。该款单片机不仅集成了强大的外围
发表于 2019-12-19
如何利用16位PIC18F458单片机实现LCD显示?
PIC8位单片机的应用设计有哪些?技巧有哪些?
、A/D、PWM、输入和输出I/O(灌电流可达25mA)、通信等常用接口,自由灵活的定义功能可以适应不同的控制要求。而不必增加额外的IC芯片。这样电路结构很简单,开发周期将大为缩短。PICl6系列单片机属于PIC8位单片机的中级型产品,采用14位的RISC指令系统。笔者使用PICl6F716单片机设计了一个电动机保护器,在设计过程中遇到很多问题,通过多方查找资料以及向Microchip公司技术人员寻求支持,问题一一得到解决。现将部分问题记录如下,与大家一起探讨。1 ICD2作为程序烧写的使用1.1 ICD2简介MPLAB ICD2在线调试器是一款低价位的PIC开发工具。它利用Flash工艺芯片的程序区自读写功能来实现仿真器调试
发表于 2019-12-12
PIC8位单片机的应用设计有哪些?技巧有哪些?
PIC8位单片机的特点及优势介绍
PIC8位单片机具有指令少、执行速度快等优点,其主要原因是PIC系列单片机在结构上与其它单片机不同。该系列单片机引入了原用于小型计算机的双总线和两级指令流水结构。这种结构与一般采用CISC(复杂指令集计算机)的单片机在结构上是有不同的。指令总线为什么不用八位,而要增加位数呢?这是因为指令的位数多,则每条指令包含的信息量就大,这种指令的功能就强。一条12位、14位或16位的指令可能会具有两条八位指令的功能。因此PIC系列单片机的指令与CISC结构的单片机指令相比,前者的指令总数要少得多(即RISC指令集)。
发表于 2019-12-11
PIC8位单片机的特点及优势介绍
PIC8位8脚单片机12C5××和12CE5××系列的特点
  Microchip公司生产的8位单片机PIC12C508(A)/509(A)型和PIC12CE518/519型产品,仅有8个引脚,其管脚排列如下图所示。该产品是PIC基本级之一,其特点是低功耗、多功能、高性能、体积小和售价低廉。因该产品体积小,所以它们可以嵌入几乎任何一种电子产品中,特别是便携式电子产品,如各种IC卡、电子身份牌、照相机、充电器、计时器、智能传感器、灯光调节器、儿童玩具等等,都已得到了广泛的应用。  PIC12CE5××与12C5××系列单片机的区别仅仅是前者带有E2PROM的数据存储器,而后者的数据区为RAM。其余特性和管脚排列、性能几乎完全相同,它们都属于OTP单片机(一次写入不可擦除),适于批量的电子产品
发表于 2019-10-14
PIC8位单片机源程序的组成
)名,这里取名TURNONASM。TURNON意指一个接通(即接通LED)程序。ASM是源程序的扩展名。  第2行说明是由适用于PIC16F84微控制器的汇编码编写的源程序。  第3行说明程序用途是接通PIC16F84 PORTB的B0位LED。  第4行说明由RC振荡器供给时钟,频率约为100kHz。  第5、6、7行说明对16F84 CPU的结构设置(用RC振荡器,看门狗定时器即watchdog timer关,上电power-up定时器开,关于16F84的结构设置,后面将详谈)。  第8、9、10行为伪指令。这是用来向汇编程序提供有关如何完成汇编的控制命令信息,它既是汇编过程的控制指令,也是汇编程序的操作指令。在这里8、9、10
发表于 2019-10-12
PICC ---- 函数
简介:一个良好的程序设计应该有一个清晰的组织结构,把不同的功能用不同的函数实现是最好的方法,因此一个函数 2K字长的限制一般不会对程序代码的编写产生太多影响。函数的代码长度限制PICC决定了C原程序中的一个函数经编译后生成的机器码一定会放在同一个程序页面内。中档系列的 PIC 单片机其一个程序页面的长度是 2K字,换句话说,用 C 语言编写的任何一个函数最后生成的代码不能超过 2K字。一个良好的程序设计应该有一个清晰的组织结构,把不同的功能用不同的函数实现是最好的方法,因此一个函数 2K字长的限制一般不会对程序代码的编写产生太多影响。如果为实现特定的功能确实要连续编写很长的程序,这时就必须把这些连续的代码拆分成若干函数,以保证每个
发表于 2020-02-13
小广播
何立民专栏 单片机及嵌入式宝典

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

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2020 EEWORLD.com.cn, Inc. All rights reserved