计算机系统
ape:hello code world
bug以痛吻我,要我回报以debug
展开
-
Linux 操作系统内核代码(一)
Linux 操作系统(一) boot.s与head.sBIOSboot.sOverviewloadload head.smov head.sprepare for the protected modehead.s初始化寄存器初始化IDT、GDT初始化IDTboot.s与head.sBIOS开机以后首先执行BIOS,BIOS完成了一下三个任务:自检:检查硬件把引导盘第一个扇区(512B)...原创 2020-05-06 16:58:39 · 1957 阅读 · 0 评论 -
深入理解计算机系统(2)
引言:在第一章提到,作为程序员,我们需要了解数据数据的机器表示方式,因为它们与实际的整数与实数是不同的,它们是对真值的有效近似值,有时候会有意想不到的行为表现,而这方面的基本内容会在第2章详细讲述。 一、十六进制表示法 二进制表示法太冗长二十进制表示法与位模式转换太麻烦,所以以十六为基数,用十六进制表示法;并要记住A为10,C为12,E为14;以及十进制2对应二进制0010,4对应二进制010...原创 2018-09-04 22:23:28 · 470 阅读 · 0 评论 -
深入理解计算机系统(1)
一、五个现实 1.int不是整数,float不是实数 例1: int如果是4字节,每字节4位,则共16位,除去符号位,还有十五位,那么问:x^2>=0? float x;Yes! int x;40000*40000 = 1600000000 50000*50000 = -1794967296(2^15 = 32768) 例 2: (x +...原创 2018-09-03 22:50:25 · 7489 阅读 · 0 评论 -
深入理解计算机系统(3)——程序的机器级表示
一、以8086为例的寄存器(8个通用寄存器、一个指令指针寄存器、一个标志寄存器、4个段寄存器)***1.通用寄存器(包含数据、变址、指针寄存器)***:通用指都能作为一般的操作数、结果、地址的存储;通用寄存器有8个,除了通用作用之外还有自己单独的用处;数据寄存器(4个)(1)AX(accumulator register):累加器、(编程时)使用频率最高,用于算术(加、减、乘、除)、逻辑运算...原创 2018-09-26 20:35:58 · 282 阅读 · 0 评论 -
HIT ICS:APP2018大作业:hello的程序人生
摘 要本文的行文过程就是折腾hello的过程,从可怜的hello刚刚诞生,成为以字节序列形式存储的高级语言程序开始,经历编译链接成长为可执行目标文件(二进制文件)再由SHELL加载创建成为一个进程,为其分配空间、虚拟内存管理以及IO管理,最终生命终结被回收。借由hello的生命历程回顾了一个学期以来计算机系统的内容,对这门课各个部分有了一个很好的贯通。感谢hello!关键词: IO,虚拟内存...原创 2018-12-31 23:16:26 · 457 阅读 · 0 评论 -
Dell Inspiron 15 7000 Gaming (BIOS :1.6.0)Windows10 安装 Ubuntu 16.04
1. 笔记本配置原创 2019-07-07 14:33:18 · 1266 阅读 · 0 评论 -
win10+ubuntu双系统修复ubuntu启动引导
Windows和Linux双系统安装,开机之后,会出现类似于这样一个界面,发现多了很多不必要的选项删掉一些东东就好,执行以下命令:su # 获取root权限cp /boot/grub/grub.cfg /boot/grub/grub.cfg_backup #先备份一下cat /boot/grub/grub.cfg > tmp #将内容重定向到其他文件,便于修改gedi...转载 2019-07-07 14:18:47 · 3085 阅读 · 2 评论