什么是cpu(cpu的工作原理是什么)
摘要搭建开发测试环境程序分析地址、vstartCPU工作原理
CPU工作原理1. 搭建开发测试环境(MacOS)1.1 安装一些必要工具#安装汇编编译器 brewinstallnasm #安装虚拟机 brewinstallqemu1.2 测试代码
该代码的功能是在屏幕上打印"hello os",这里不再过多解释这个代码,这段代码主要是为了后文介绍几个基础概念。;主引导程序 SECTION MBR vstart=0x7c00 mov ax,cs mov ds,ax mov es,ax mov ss,ax mov fs,ax mov sp,0x7c00 mov ax,0x600 mov bx,0x700 mov cx,0 mov dx,0x184f int 0x10 mov ah,3 mov bh,0 int 0x10 mov ax,message mov bp,ax mov cx,8 mov ax,0x1301 mov bx,0x2 int 0x10 jmp $ message db "hello os" times 510-($-$$) db 0 db 0x55,0xaa 1.3 运行程序#编译汇编程序 nasm-oprint.binprint.S #创建虚拟机镜像 qemu-imgcreate-frawvm1.raw1G #将编译后的汇编程序写入第一个扇区 ddif=print.binof=vm1.rawbs=512count=1conv=notrunc #启动虚拟机 qemu-system-x86_64vm1.raw
启动以后效果如下:
2. 程序分析
如何加载操作系统 已经讲到了如何加载我们的操作系统,在加载操作系统是我们提到了主引导程序,上述代码其实就是相当于MBR程序(但这里并不是去引导加载操作系统,只是在屏幕上打印一句话)。
BIOS在完成自检等初始化操作以后,会跳转到固定0x7c00处执行主引导程序,因此我们的代码使用vstart=0x7c00来表明我的代码会被初始化在内存的0x7c00处。
因此在我们启动虚拟机后,BIOS完成操作以后会跳转到我们的程序,CPU然后根据我们程序的指令执行,最终在屏幕打印了hello os。3. 地址、vstart
地址是源码文件中各符号偏移文件开头的距离,一般一个文件的默认开始地址为0。
我们的应用程序使用vstart以后,应用程序便被赋予了一个虚拟的起始地址,不管是虚拟地址还是真实地址,只要将这个地址交给了地址总线,地址总线便会去 查找该地址处的内容。因此如果在开发中使用了vstart,必须要保证程序会出现在物理内存的该地址处。4. CPU工作原理
CPU的工作模式分为实模式和保护模式,实模式的最大寻址空间为1M。关于实模式和保护模式在后续我们会讲解。在介绍这两种模式之前,我们还是先讲CPU的工作原理。
CPU的唯一任务就是执行指令,在执行指令的过程中,需要CPU的是三个部件共同协作完成:控制单元运算单元存储单元
控制单元是CPU的核心,只有通过控制单元CPU才能知道自己下一步需要做啥,控制单元大致由三部分组成:指令寄存器IR指令译码器ID操作控制器OC
当我们的应用程序(也就是指令)被加载至内存以后,指令指针寄存器IP指向内存中下一条待执行的指令,该指令被送上地址总线以后,控制单元会获取指令 然后将其加载到指令寄存器IR中,此时的指令只是一串数字和字母,CPU如果要知道其真正的执行含义必须借助指令译码器ID对这串数字和字母按照 指令的格式进行解码分析。IA32(x86)指令格式如下:
前缀在指令格式中是可选模块,操作码对着我们应用程序中的mov,jmp等,寻址方式又分为基址寻址、变址寻址等(后续细讲),操作数类型记录的是 使用的寄存器。立即数和偏移量分别对应我们在寻址过程中用到的是立即数还是偏移量。
存储单元是指CPU中的L1、L2缓存和寄存器,用于存储指令中用到的数据。
在指令和数据都完善以后,控制单元中的操作控制器会给相关部件发送信号开始执行。
感谢阅读,码字不易,如果觉得还可以,顺手"" "点赞",这对我是最大的鼓励!!
八哥训练(训练八哥学舌)八哥训练(训练八哥学舌)村东有百年大樟树,树杆粗大而中空,树底有洞,入而攀其壁,直达树冠,喜掏鸟窝得一八哥,细训而不得果,愤而跺脚。不知何时,玩伴们都训起了八哥,人人跟风得弄一只。
沙漠玫瑰(沙漠玫瑰好养开花多)沙漠玫瑰(沙漠玫瑰好养开花多)沙漠玫瑰最近好多花友都在养,它好养开花多,只要温度高光照充足,就能够做到全年花开不断,最近好多花友说看到别人养的八爪鱼根系的沙漠玫瑰非常的好看,而且价
玫瑰花怎么养(玫瑰苗如何养护才能成活率高?)玫瑰花怎么养(玫瑰苗如何养护才能成活率高?)挑选适合的盆栽花盆和土壤层,是栽种好玫瑰的重要一步,恰当的养殖方式可以大大增加栽种玫瑰花苗的通过率。好像玫瑰盆栽花盆的应用,提议是挑选这
德兴覆盆子(李时珍苏轼鲁迅朋友圈盛赞的仙品)德兴覆盆子(李时珍苏轼鲁迅朋友圈盛赞的仙品)如果不怕刺,还可以摘到覆盆子,像小珊瑚珠攒成的小球,又酸又甜,色味都比桑椹要好得远。鲁迅从百草园到三味书屋众所周知,蓝莓中含有花青素,具
醋蛋液多少钱一瓶(醋蛋液厂家)兄dei,或许可以放下手里的肥宅快乐水?跟随我,了解一下紫林酿造米醋,为自己做一份养生饮品,品味别致健康的快乐!醋蛋液如何制作呢?制作过程将一枚生鸡蛋用清水洗净放入容器内,倒入15
苏泊尔电磁炉e4(几种电磁炉故障代码查询)苏泊尔电磁炉e4(几种电磁炉故障代码查询)电磁炉故障代码查询大全一美的电磁炉SF164174184194204214故障码查询E01断路(主传感器坏)E02短路(主传感器坏)E03
八哥狗好养吗(巴哥犬难养吗?)八哥狗好养吗(巴哥犬难养吗?)巴哥犬因其面部表情像一种叫巴哥的小猴子,由此得名,它的性格稳定,开朗,高贵富有魅力,很适合住在公寓的宠主们饲养,但是饲养巴哥不能忽略这几点,因为对巴哥
比熊犬能长多大(比熊犬寿命有多长?)比熊犬能长多大(比熊犬寿命有多长?)在众多狗狗品种中,比熊以其娇小可爱的特征,取得了无数养狗家庭的喜爱,那么养比熊需要知道些什么呢?1,比熊多大开始懂事比熊一般是在5月龄以上就开始
卡扎菲女保镖(卡扎菲的贴身女保镖)卡扎菲女保镖(卡扎菲的贴身女保镖)众所周知,在上个世纪,中东有两个总统非常出名,被誉为中东猛虎般的存在,一个萨达姆一个是卡扎菲。前者是伊拉克的前总统,后者是利比亚的前总统。两人的命
杭州名片(杭州万市镇再添文旅新名片)杭州名片(杭州万市镇再添文旅新名片)杏福小镇层层绿,万山环镇点点红。日前,中共叶家村党小组旧址揭牌暨万市镇跟着红色地图学党史专题活动启动仪式在何务叶家村举行,标志着这一红色旧址正式
东阳市政府网(东阳这些做法获新华网点赞!)东阳市政府网(东阳这些做法获新华网点赞!)打造欠薪治理智治闭环6月10日,新华网刊发浙江东阳多措并举打造欠薪治理智治闭环一文,点赞东阳市在欠薪治理方面的做法,全文如下真心感谢你们,