深入理解计算机系统--信息的表示和处理

本文介绍了计算机中信息的存储和处理方式,包括字节、虚拟存储器的概念,十六进制表示法,字长及其意义,数据大小及可移植性考虑,寻址与字节顺序等。此外还探讨了字符串和代码的表示方法,以及逻辑运算和位级运算。深入讨论了整数和浮点数的表示方法与运算规则。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第二章 信息的表示和处理

 2.1 信息存储

   字节(byte),作为最小的可寻址的存储器单位。

   机器级程序将存储器视为一个非常大的字节数组,称为虚拟存储器(virtual memory)。存储器每个字节都由一个惟一的数字来标识,称为它的地址(address)。

   虚拟地址空间(virtual address space)

   程序对象(project object)

 2.1.1 十六进制表示法

 2.1.2 字

   字长(word size),指明整数和指针数据的标称大小(nominal size)。

 2.1.3 数据大小

 

 分配的字节数随着机器和编译器的不同而不同。

 程序员应该力图在不同的机器和编译器上可移植。

 2.1.4 寻址和字节顺序

  0x01234567

  

 2.1.5 表示字符串

 2.1.6 表示代码

 2.1.7 布尔代数和环

  逻辑运算 &  |  ^

 2.1.8 C中的位级运算

   按位布尔运算。

 2.1.9 C中的逻辑运算

 2.1.10 C中的移位运算

2.2 整数表示

  2.2.1 整型数据类型

  2.2.2 无符号和二进制补码编码

  2.2.3 有符号数和无符号数之间的转换

 

 2.2.4 C中的有符号与无符号数

 2.2.5 扩展一个数字的位表示

 2.2.6 截断数字

 2.2.7 关于有符号数和无符号数的建议

   绝不使用无符号数。除了C以外,很少有语言支持无符号整数。麻烦远大于益处。

 2.3 整数运算

  2.3.1 无符号加法

  2.3.2 二进制补码加法

   正溢出,负溢出

  2.3.3 二进制补码的非

  2.3.4 无符号乘法

  2.3.5 二进制补码乘法

  2.3.6 乘以2的幂

   移位

  2.3.7 除以2的幂

2.4 浮点

 2.4.1 二进制小数

 2.4.2 IEEE 浮点表示

  符号

  有效数

  指数

规格化值

非规格化值

特殊数值

 2.4.3 数值示例

 2.4.4 舍入

 2.4.5 浮点运算

 2.4.6 C语言中的浮点

  float 和 double

 

 

 

 


  

  

 

  

  


  


 

  

 

 

 

 

 


  

  

  

 

  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值