当前位置: 首页 > wzjs >正文

武汉门户网站建设比较好的搜索引擎

武汉门户网站建设,比较好的搜索引擎,建设银行新疆分行网站,宁波seo推广哪家公司好这里写目录标题 计算机是怎么工作的问题提出计算机的产生图灵机通用图灵机计算机 操作系统启动电源键开启后,计算机干了什么引导扇区的代码(bootsect.s)移动boot代码将setup代码载入到内存(仅仅载入,不执行&#xff09…

这里写目录标题

  • 计算机是怎么工作的
    • 问题提出
    • 计算机的产生
      • 图灵机
      • 通用图灵机
      • 计算机
  • 操作系统启动
    • 电源键开启后,计算机干了什么
    • 引导扇区的代码(bootsect.s)
      • 移动boot代码
      • 将setup代码载入到内存(仅仅载入,不执行)
      • 载入setup后,打印字符并载入system模块
      • boot代码的最后,准备转入setup执行
    • setup模块代码
  • 一级目录
    • 二级目录
    • 二级目录
    • 二级目录
  • 一级目录
    • 二级目录
    • 二级目录
    • 二级目录
  • 一级目录
    • 二级目录
    • 二级目录
    • 二级目录
  • 一级目录
    • 二级目录
    • 二级目录
    • 二级目录
  • 一级目录
    • 二级目录
    • 二级目录
    • 二级目录

计算机是怎么工作的

问题提出

在这里插入图片描述

计算机的产生

图灵机

在这里插入图片描述
图灵机就是模拟人脑的计算过程,缺点是他只有一套固定的逻辑

通用图灵机

在这里插入图片描述
而通用图灵机,他在图灵机的基础上进行了改进,他可以修改控制器的逻辑,向控制器中导入不同的逻辑,来实现不同的功能,这里的“设置控制器动作”就是控制不同的逻辑的,这一动作依赖于我们的编写的程序,我们的程序代码就是上图中的菜谱,程序代码用来设置控制器动作

计算机

在这里插入图片描述
将程序代码和数据存储到起来,这里的存储指的是计算机的内存,之后“运算器、控制器”会从内存中取代码指令,然后执行,这就是计算机的雏形,关键在于“取指执行”

程序代码会被翻译为汇编语言代码,每一行汇编代码,都规定了一个逻辑
计算机有一个指针,称为IP指针(也称PC指针),他会指向当前执行的程序代码,每次IP指针将程序代码传给控制器和运算器,控制器和运算器拿到逻辑和数据后,进行逻辑执行。总结下来就是 取指执行,计算机是如何工作的:取值执行

操作系统启动

电源键开启后,计算机干了什么

在这里插入图片描述
首先,CPU处于实模式,该模式下,该模式的寻址就是“段首址 左移四位 + 偏移地址”,而CS初始值是0xFFFF,IP初始值是0x0000.所以,CS会左移四位+IP,这里的CS和IP都是十六进制,<<4,转换成十六进制就是数字右边多个0,之后+IP,IP也是0,所以寻址之后就是0xFFFF0,而这就是BIOS程序在内存中的固定固化位置(故意这样设计,使得计算机在开机时百分百获取到IO功能,从而后续可以进行“代码载入到内存,以及从内存读代码到CPU”的工作),BIOS是基础IO系统,是一套最基本的输入输出系统,可以用来进行初始的取指令,从而交给“运算器和控制器”执行
之后检查外设,都没问题之后,

之后,BIOS(基本IO系统)将磁盘0磁道0扇区开始的一个扇区(512B大小)的代码读入到内存的0x7c00处开始。磁盘的0磁道0扇区称为引导扇区,这一块引导扇区的代码,就是操作系统的第一块代码
然后重置CS=0x07c0,IP=0x0000
所以,“控制器和运算器”就会去顺序执行CS:IP处的代码,每次都通过BIOS取指令

引导扇区的代码(bootsect.s)

移动boot代码

在这里插入图片描述
1、“.s”后缀是汇编文件的后缀,说明引导扇区的代码是汇编语言,与高级语言C语言的一个区别是,高级语言代码无法百分百的控制运行(如变量的地址是无法控制的),而汇编会百分百控制

2、代码段的代码解释:
刚开始的两行,是将两个宏的内容给到DS和ES,两个宏在图的右上角
而cx是计数寄存器,相当于循环变量
之后将SI和DI的寄存器内容置0
(其中,DS:SI配合寻址,ES:DI配合寻址)

rep movw,会与cx配合,这里是指重复移动256个字的内容,256字就是512B,相当于将整个引导扇区的汇编代码从0x7C00:0x0000处,移动到0x9000:0x0000
(低地址处留出了位置,具体用处后面会讲)

之后jumpi的作用是,将go这个标号所在位置的指令的地址相对于当前CS段地址的偏移量,赋值给IP指针,将INITSEG这个宏的内容赋值给CS代码段段首址寄存器
(因为当前的代码已经被整体挪到了0x9000:0x0000的位置,所以这个jumpi的作用是跳转到0x9000:0x偏移量,而go标号就在下一行,所以实际上相对而言还是顺序执行,但是又必不可少要在rep移动后执行该动作,因为程序已经挪动过了)

将setup代码载入到内存(仅仅载入,不执行)

在这里插入图片描述
后续代码简略说明:
1、中断,0x13是读磁盘扇区的中断,我们接下来要继续读磁盘了

2、cl规定了读磁盘时的开始扇区,al规定了读几个扇区
这里cl为02,即读第二个扇区,开始读4个,如上图下面所示,这4个扇区就是setup的扇区

3、从磁盘读到内存的哪个地址开始?,读到es:bx,即逻辑地址0x90200处,这个地址与0x90000正好差了512B
(需要注意的是,这里是向高地址顺位读,并没有占用我们之前移动bootsect所留下的地址空间(低地址处))

载入setup后,打印字符并载入system模块

在这里插入图片描述
最后,boot还要做两个工作:
1、0x10号中断,表示显示字符,而我们打印的字符就是下面双引号中的内容,上图的2处,表示字符的个数,当前是24个字符
(这个打印,与我们自己的电脑开始时的那个Windows图标是一样的,只不过win的那个很精致,我们这里很粗糙,只是打印了一行字)

2、然后会调用一个函数(即call的作用)

将下一个模块,就是system的模块,载入到内存(仅仅载入,并不执行)

boot代码的最后,准备转入setup执行

在这里插入图片描述
1、简要解释了一下system模块为什么要用call

2、转入setup执行,因为boot已经将setup模块和system模块的代码载入到了内存(即从磁盘读出,放入内存了)

之后,修改CS:IP的值,CS=0x9020,IP=0x0000,所有,会转入setup模块在内存中的首地址0x90200处开始执行

setup模块代码

一级目录

二级目录

二级目录

二级目录

一级目录

二级目录

二级目录

二级目录

一级目录

二级目录

二级目录

二级目录

一级目录

二级目录

二级目录

二级目录

一级目录

二级目录

二级目录

二级目录

http://www.dtcms.com/wzjs/116277.html

相关文章:

  • 两学一做网站是多少关键词工具有哪些
  • 淮安高端网站制作国内设计公司前十名
  • 做网站的协议书和计划书吴中seo页面优化推广
  • 软件b2c网站建设怎么创建自己的游戏网站
  • 漳州做网站互联网营销怎么赚钱
  • 如何制作门户网站杭州网站seo优化
  • 榆林 网站建设网络营销有哪些推广方法
  • 西班牙语网站设计哪家好网站推广优化
  • 永州建设网站公司新app推广去哪里找
  • ppt做视频模板下载网站有哪些内容网络推广收费价目表
  • 彩票网站 在哪里做今日军事新闻头条视频
  • 昆明哪些做网站建设的公司沈阳优化推广哪家好
  • 建筑公司企业愿景与使命抖音seo排名系统哪个好用
  • 支付网站开发费可以做无形资产百度快照是干什么的
  • 电商网站现状分析精准引流的网络推广方法
  • 网站专题策划案例短链接
  • 平台推广网站排名线上营销怎么推广
  • 网站设计策划书3000字建立网站的步骤
  • 松岗建设网站互联网广告营销是什么
  • 网站建设设计软件微信公众号推广2元一个
  • 苏州公司技术支持 苏州网站建设磁力下载
  • 网站设置可以访问网络营销专业是做什么的
  • 2o17甘孜建设网站市场营销推广策划方案
  • 武汉品牌网站建设公司排名个人网上卖货的平台
  • 海宁网站制作google广告投放
  • 网站建设论文ppt东莞整站优化排名
  • 电商网站建设与运营实训惠州自动seo
  • 武汉线上运营公司新手seo入门教程
  • 东莞网站建设多少钱深圳靠谱网站建设公司
  • 做网站资讯seo搜索引擎优化教程