从C程序设计的系统总结看现代计算机程序设计的微观
⒈应如何看待高级程序设计语言中的数据类型
高级程序设计语言中的数据类型的种类与计算机硬件所能支持的数(位数)据构造有关;
高级程序设计语言中的数据长度与计算机的机器字长和指令种类有关;数据类型符号与机器字长的关系对照表
数据类型符号 所对应的机器字长 int、unsigned int 整数字(有、无符号) short、unsigned short 整数半字(有、无符号) long、unsigned long 整数双字(有、无符号) char、unsigned char 整数字节(有、无符号) loat 浮点数字 double 浮点数双字 long double 浮点数四字(倍双字) 例1:已知某计算机机器字长16位,试指出下述C语句的执行结果。
int i=40000;/*若字长是32位,可以令i=2150000000*/
rintf(“%d”,i);
分析:
先将i变换为十六进数得:40000=0X9c40(若字长是32位且i=2150000000,则i变换的十六进数值为9
∵i为有符号整数(即将占用一位数的符号位)且符号位为1(即为负数)
∴编译系统将计算其视为补码(即-0X63c0),因此执行后的输出结果为-25536例2:已知某程序内的初始数据声明为:char* p=”acd”;当该程序
原创力文档

文档评论(0)