-第2?来单片如的官应用程秀设计- 地址 0七 0x00 0x00 +2 0x48 +3 OXC 图7.3浮点数的存储结构
第7章 单片机的C语言应用程序设计 0x00 0x00 0x48 0xC1 …. +0 +1 +2 +3 地址 图7.3 浮点数的存储结构
-第2?来单片如的官应用程秀设计- 在编程时,如果只强调运算速度而不进行负数运算时, 最好采用无符号( unsigned)格式 无符号字符类型的使用:无论何时,应尽可能使用无符号 字符变量,因为它能直接被MCS-51所接受。基于同样的原因, 也应尽量使用位变量。有符号字符变量虽然也只占用一个字 节,但需要进行额外的操作来进行测试代码的符号位。这无 疑会降低代码效率
第7章 单片机的C语言应用程序设计 在编程时,如果只强调运算速度而不进行负数运算时, 最好采用无符号(unsigned)格式。 无符号字符类型的使用:无论何时,应尽可能使用无符号 字符变量,因为它能直接被MCS-51所接受。基于同样的原因, 也应尽量使用位变量。有符号字符变量虽然也只占用一个字 节,但需要进行额外的操作来进行测试代码的符号位。这无 疑会降低代码效率
-第2?来单片如的官应用程秀设计- 使用简化形式定义数据类型。其方法是在源程序开头使用 # define语句自定义简化的类型标识符。例如: #define uchar unsigned char #define uint unsigned int 这样,在编程中,就可以用 uchar代替 unsigned char,用uint 代替 unsigned Int 来定义变量
第7章 单片机的C语言应用程序设计 使用简化形式定义数据类型。其方法是在源程序开头使用 #define语句自定义简化的类型标识符。例如: #define uchar unsigned char #define uint unsigned int 这样,在编程中,就可以用uchar代替unsigned char,用uint 代替unsigned int来定义变量
-第2?来单片如的官应用程秀设计- 73C51数据的存储类型与MCS51存储结构 表72C51存储类型与MCS-51存储空间的对应关系 存储类型与存储空间的对应关系 data 直接寻址片内数据存储区,访问速度快(128字节) bdata 可位寻址片内数据存储区,允许位与字节混合访问(16字节) idata 间接寻址片内数据存储区,可访问片内全部RAM地址空间(256字节) pdata 分页寻址片外数据存储区(256字节)由MOV@R访问(i=0,1) xdata 片外数据存储区(64KB)由MOwX@DPTR访问 程序存储器64KB空间,由MOVC@DPTR访问
第7章 单片机的C语言应用程序设计 7.3 C51数据的存储类型与MCS-51存储结构 表 7.2 C51存储类型与MCS-51存储空间的对应关系 存储类型 与存储空间的对应关系 data 直接寻址片内数据存储区,访问速度快(128字节) bdata 可位寻址片内数据存储区,允许位与字节混合访问(16字节) idata 间接寻址片内数据存储区,可访问片内全部RAM地址空间(256字节) pdata 分页寻址片外数据存储区(256字节)由MOV @Ri访问(i=0,1) xdata 片外数据存储区(64 KB)由MOVX @DPTR访问 code 程序存储器64 KB空间,由MOVC @DPTR访问
-第2?来单片如的官应用程秀设计- 表73C51存储类型及其数据长度和值域 存储类型 长度b 长度(byte) 值域范围 data 0~255 idata 0~255 pda 0~255 xdata 0~65535 code 0~65535
第7章 单片机的C语言应用程序设计 表7.3 C51存储类型及其数据长度和值域 存储类型 长度(bit) 长度(byte) 值域范围 data 8 1 0~255 idata 8 1 0~255 pdata 8 1 0~255 xdata 16 2 0~65 535 code 16 2 0~65 535