计算机操作系统

重要公式:

a:系统某个部分初始耗时比例,k:加速比例,S:获取的加速比

重要计算:

二进制和十六进制之间的计算:

普通方法:

计算机操作系统_第1张图片

计算机操作系统_第2张图片

特殊情况方法:

计算机操作系统_第3张图片

 

十进制和十六进制计算:

使用x除于16取余数,余数转化为16进制数,然后倒序书写

计算机操作系统_第4张图片

数据类型的取值范围

计算机操作系统_第5张图片

C++中的int类型范围就是int32_t的范围,以此推断猜想long类型就是int64_t的范围

IEEE浮点表示法

计算机操作系统_第6张图片

计算机操作系统_第7张图片

在支持IEEE浮点格式的机器上都是使用偶数舍入的舍入方式,但是C语言没有要求机器使用IEEE浮点,所以没有标准的表示方式。

 

GCC编译器编译C语言:

  1. 执行linxu代码:gcc -Og -o codename FileName.c
  2. C预处理器扩展源代码,如插入所有#include的文件,扩展#define声明指定的宏
  3. 产生源文件的汇编代码,名字为FileName.s
  4. 将汇编代码转化程二进制目标代码文件FileName.o
  5. 链接器将两个目标代码文件与实现库函数(如printf)的代码合并,并产生最终可执行代码文件codename

汇编代码

一个a乘b的结果存储到dest中

计算机操作系统_第8张图片

寻址模式

Imm:立即数偏移

rb:基址寄存器

ri:变址寄存器

s:比例因子

计算机操作系统_第9张图片

例子:

计算机操作系统_第10张图片

3:操作数既是值

4:rax得地址

6:(%rax + %rdx + 9)

8:(%rcx * 4 + 0xFC)

9:(%rax + %rdx * 4 )

 

每个寄存器的字节大小

计算机操作系统_第11张图片

 

 

计算机操作系统_第12张图片

  1. ebx不能作为复制得目的寄存器
  2. 寄存器rax不能复制到栈指针rsp中

 

你可能感兴趣的:(分类知识点学习,操作系统)