Embedded C Programming: Techniques and Applications of C and PIC MCUS
前面我们已经接触过一些简单的常量。在C语言中有多种定义常量的方法。有些情况下,可以用多种不同的方法表示同一个数字,而有时候又需要让常量本身来表达自己的类型(看到常量本身就直接能看出其类型)。“类型”将在下一章中详细介绍。类型规定了数据在内存中的组织形式。例如,一个数据占多少个字节(byte)。
一个比特位(bit)在内存或者寄存器中可以有两种状态,“0”或“1”。在数字电子中,可以很方便地用电信号表示两种状态:关和开、激活和未激活、低电平和高电平。这两种状态可以用“0”和“1”来表示(见图2-1)。具体什么电压范围代表0和1取决于整个电路的逻辑电源电压以及整个芯片所用的逻辑电压(TTL、CMOS等)。我们可以规定0V代表逻辑0。图2-1中给出的是正逻辑,相反就是负逻辑。
半字节(nibble)表示4位,拥有16种状态。典型的半字节就是一个字节的高4位或者低4位(most significant或者least significant nibble)。
一个字节有8位,也就是通常所说的8位宽。8位微控制器一次可以将一个比特输出到8位宽的数据总线上。
通常用字节来描述内存大小。在不同机器上,内存的组织方式可能会有所不同,我们也用“字”来表示内存大小。对于PIC MCU来说,常用字节来表示RAM(随机访问内存)大小,而在程序内存(program memory)中用字来表示,因为程序内存的位宽可能是12、14、16,或者24位。因为地址空间是二进制的,内存大小就可以用2的幂来表示。例如,用210来表示1024字节,而不是直接说1000字节。下面列出了表示内存的常用缩写:1K = 1kilobyte = 1024字节1M = 1megabyte = 1024×1024或者1?048?576字节1G = 1gigabyte = 1024×1024×1024 或者1?073?741?824字节
相关资源:嵌入式系统/ARM技术中的Microchip新推四款质优价廉的64及80引脚PIC闪存单片机