CSAPP
爽、
业精于勤而荒于嬉,行成于思而毁于随
展开
-
深入理解计算机系统(5) 第二章 信息的表示和处理(2)
目录1.整数表示1.1C语言整数数据类型1.2无符号数的编码1.3补码编码为什么上面C语言数据类型负数的范围要比正数的范围大1? 结论1.4有符号数与无符号数之间的转换原理1.5扩展一个数字的位表示零扩展符号位扩展1.6截断数字 1.整数表示1.1C语言整数数据类型 可以看出:①、用数据类型表示大小的数是非负数(声明为...原创 2019-01-31 15:11:55 · 219 阅读 · 0 评论 -
深入理解计算机系统(6)有符号数与无符号数隐式转换弊端
C语言有符号数与无符号数隐式转换弊端题一#include<stdio.h>float sum(float a[], unsigned length) { int i; float result = 0; for (i = 0; i <= length - 1; i++) { result += a[i]; ...原创 2019-01-31 17:19:51 · 243 阅读 · 0 评论 -
深入理解计算机系统(1) 序章
起因 LZ每次拿起书看到那些复杂的底层架构,看到存储器,寄存器,CPU,总线等等这些概念就头大。书不像《大话设计模式》那样风趣幽默,也没有像《java编程思想》那样,几乎半本书都是代码实例,通俗易懂,而且练习题切入要害,引人深思。但是这难啃的骨头不啃下来,无法在写程序的道路上走的更远。身为程序员总要会调优把,那么你需要了解jvm,但像《深入理解Java虚拟机》这类书籍,不了解底层计算机...原创 2019-01-29 11:31:33 · 175 阅读 · 0 评论 -
深入理解计算机系统(2) 第一章(1)
目录1.信息就是位+上下文1.1hello程序 文件名为hello.c的文本文件 1.2大部分现代计算机系统用ASCII标准来表示文本字符 ASCII文本字符字节位1.3 hello程序说明一个基本思想1.4区分数据对象唯一方法2源程序到可执行程序的过程(编译过程):四个阶段3.了解编译系统的益处3.1优化编译性能(第三,五,六章解答)3.2理...原创 2019-01-30 14:09:10 · 627 阅读 · 0 评论 -
深入理解计算机系统(3) 第一章(2)
目录1.高速缓存存储器(cache) 2.存储器层次结构2.1遵循的机械原理2.2主要思想3.操作系统3.1两个基本功能3.2实现基本功能引出的抽象概念3.2.1进程(第八章解释实现原理)3.2.2线程3.2.3虚拟内存(第九章解释)3.2.4文件4.计算机系统中抽象的重要性4.1常见的抽象上一篇讲解了hello程序在计算机系统中是如何运行的...原创 2019-01-30 15:13:29 · 275 阅读 · 0 评论 -
深入理解计算机系统(4) 第二章 信息的表示和处理(1)
目录1.信息存储1.1十六进制表示法1.1.1由来1.1.2表示1.1.3十六进制与十进制、二进制之间的互相转换练习(略)1.2字长1.2.1数据大小1.3寻址和字节顺序1.3.1规则1.4表示代码1.5表示字符串1.6布尔代数1.7位级运算 1.8逻辑运算1.9移位运算1.9.1左移1.9.2右移1.信息存储计算机内所有...原创 2019-01-30 16:44:27 · 606 阅读 · 0 评论