《深入理解计算机系统》读书笔记三

匆忙的看完了本书的第二章,第二章主要讲了信息的表示和处理,重点是后半部分的整数和浮点数的表示和处理。

 

整数主要有无符号数和有符号数,大多数计算机对于有符号数都是通过其补码表示的。这本书是从编程者的角度来讲计算机原理,因此讲了C语言对于整数的处理,当一个有符号数和一个无符号数进行运算时,会首先转化为无符号数,这就给我们编程带来了一定的问题。因此我们在编程时尤其要注意编程语言和编译器对于数据类型的默认强制转换。

 

至于浮点数,现在大多数计算机都采用IEEE的浮点数标准。浮点数的在计算机中的表示是不准确的,这也造成了浮点数的运算不具有交换性等特性,在编程时一定要防止出现这些奇怪的问题。

 

由于浮点数特殊的编码方式,因此在没有浮点支持的CPU中执行浮点运算,性能很差。Intel在8087以后就广泛的支持了浮点运算了,但在目前嵌入式处理器中,还有很多没有浮点运算单元,那对浮点的运算就是要先转化为整数才能完成了。

 

了解了信息的表示和处理方式,下一章开始介绍指令的问题了。也就是编程语言在机器中是如何执行的。内容开始渐入佳境了。

你可能感兴趣的:(计算机体系结构)