1.汇编代码和机器代码都是和特定机器相关的。
2.精通细节是理解更深和更基本概念的先决条件。
3.32为机器内存为2的32次方,4*1G 64位机器为2的48次方,2的40次方位1T,2的8次方为256.256T。
4.摩尔定律:芯片上的晶体管数量每年翻一番:实际上是18个月并且磁盘容量,存储器芯片容量和处理其性能都符合这一定律。
5.一个程序:.i-->.s-->.o-->.exe。windows把生成汇编代码和编译代码混了到一起了,直接从.i到.o了。
6.计算机系统的抽象:1:ISA,好像每条指令都是顺序的。2:存储器使用虚拟地址。操作系统负责虚拟地址空间,转换成实际的物理地址。
7.示例:int sum(int x,inty){int t = x+y; retrun t} 汇编代码:首先压栈返回地址,其次向上寻址mov存放参数,接着向下执行函数代码,最后出栈。
sum:
push%esp
movl(%esp,%ebp)
move 12 %esp,%eax
addl %eax,t
pop%ebp
8.总线一次性能够传输的位数称作“字长”,intel的字是16位的,了解各基本数据类型所占的位数。
9.过程调用的栈帧结构:栈底--》栈顶(大小例如VC1M)
如果大小不足Stack Overflow: