X86汇编语言 从实模式到保护模式
文章平均质量分 94
movYou521
这个作者很懒,什么都没留下…
展开
-
【X86汇编语言 从实模式到保护模式】07 进入保护模式
文章目录1 为何要使用保护模式2. 全局描述符表3 存储器的段描述符附录1 为何要使用保护模式一般来说,操作系统负责整个计算机软、硬件的管理,它做任何事情都是可以的。但是,用户程序却应当有所限制,只允许它访问属于自己的数据,即使是转移,也只允许在自己的各个代码段之间进行。但是在实模式下,用户程序对内存的访问非常自由,没有任何限制,随随便便就可以修改任何一个内存单元。在多用户、多任务时代,内存中会有多个用户(应用)程序在同时运行。为了使它们彼此隔离,防止因某个程序的编写错误或者崩溃而影响到操作系统和其原创 2021-07-10 12:20:47 · 1561 阅读 · 0 评论 -
【X86汇编语言 从实模式到保护模式】06 32位 x86 处理器编程架构
文章目录1. IA-32 架构得基本执行环境1.1 寄存器扩展1.2 基本的工作模式1.3 线性地址2. 现代处理器的结构和特点2.1 流水线2.2 高速缓存2.3 乱序执行2.4 寄存器重命名2.5 分支目标预测3. 32 位模式的指令系统3.1 32 位处理器的寻址方式3.2 操作数大小的指令前缀3.3 一般指令的扩展1. IA-32 架构得基本执行环境1.1 寄存器扩展8 个通用寄存器 AX,BX,CX,DX,SI,DI,SP,BP 从 16 位扩展成了 32 位,分别密码位 EAX,EBX,原创 2021-06-17 21:26:26 · 211 阅读 · 0 评论 -
【X86汇编语言 从实模式到保护模式】05 中断和时钟显示
文章目录1. 外部硬件中断1.1 非屏蔽中断1.2 可屏蔽中断1.3 中断向量表2. 内部中断3. 软中断1. 外部硬件中断硬件中断一般是从处理器外面来的中断信号。当外部设备发生错误,或者有数据要传送(比如从网络接收到一个针对当前主机的数据包),或者处理器交给它的事情处理完了。如下图,外部硬件中断是通过两个信号线引入处理器内部的。这两根线的名字叫做NMI和INTR。中断信号的来源,或者说是产生中断的设备,称为中断源。当一个中断发生时,处理器将会通过中断引脚 NMI 和 INTR 得到通知。除此之外原创 2021-06-09 22:24:47 · 1102 阅读 · 0 评论 -
【X86汇编语言 从实模式到保护模式】05 程序加载器-硬盘和显卡的访问与控制
文章目录1.主引导扇区是处理器迈向广阔天空的第一块跳板。离开主引导扇区后就由操作系统接受。操作系统主要负责内存管理,文件管理,进程管理,外围设备的访问和控制等。程序可以由千千万万个,但是加载过程是固定的。再本章,我们会把主引导扇区改造成一个程序加载器,用来加载用户程序,并执行该程序(将处理器的控制器交给该程序0)。1....原创 2021-06-06 14:28:41 · 308 阅读 · 0 评论 -
【X86汇编语言 从实模式到保护模式】04 内存中的栈结构
文章目录1. 回顾2. 汇编代码3. 代码分析4. 进一步认识栈5. 运行结果1. 回顾前面两章的主引导扇区功能展示了在屏幕显示字符串。02 编写主引导扇区代码 的做法是一个字符一个字符的传送到显存。编写主引导扇区代码-另一种写法 的做法是将要传送的字符先暂存到内存中,使用 movesw 指令来将这些字符传送到显存,显然这种做法更加的高效。本章的目的是利用栈这种结构来向屏幕输出字符串 ‘1+2+3+…+100=’ ,并计算其结果然后输出。2. 汇编代码下面给出程序的汇编代码并进行解析。原创 2021-05-13 21:43:22 · 531 阅读 · 0 评论 -
【X86汇编语言 从实模式到保护模式】03 编写主引导扇区代码-另一种写法
文章目录1. 汇编代码2. 代码分析3. 运行结果1. 汇编代码 ;代码清单6-1 ;文件名:c06_mbr.asm ;文件说明:硬盘主引导扇区代码 ;创建日期:2011-4-12 22:12 jmp near start mytext db 'L',0x07,'a',0x07,'b',0x07,'e',0x07,'l',0x07,' ',0x07,'o',0x07,\原创 2021-05-11 21:26:33 · 242 阅读 · 0 评论 -
【X86汇编语言 从实模式到保护模式】02 编写主引导扇区代码
目录1. 主引导扇区2. 在屏幕上显示文字1. 主引导扇区处理器加电或复位之后,如果硬盘是首选的启动设备,那么 RMO-BIOS 将尝试读取硬盘 0 面 0 道 1 扇区。传统上,这就是主引导扇区(Main Boot Sector,MBR)。主引导扇区数据又512字节,ROM-BIOS 将其加载到逻辑 0x0000:0x7c00 处,即物理地址 0x07c00 处。一个有效的主引导扇区,其最后两个字节是 0x55 和 0xaa。如果主引导扇区有效,ROM-BIOS 就会段间跳转 jmp 0x0000:原创 2021-05-09 17:40:46 · 382 阅读 · 0 评论 -
【X86汇编语言 从实模式到保护模式】01 处理器、内存和指令
目录1. 寄存器和算数逻辑部件2. 内存储器3. 指令和指令集4 Intel 8086 处理器4.1 8086 的通用寄存器4.2 程序重定位难题4.3 内存分段机制4.4 8086 处理器内部组成框图4.5 8086 内存分段机制1. 寄存器和算数逻辑部件处理器(Processor)是一台计算机的核心,它在震荡器脉冲的激励下,从内存中获取指令,并发起一系列由该指令所定义的操作。当这些操作结束后,它再接着取下一条指令。一般情况下,该过程是连续不断,循环往复的。下图是一个简易的处理器图:在处理器的底原创 2021-05-09 14:35:40 · 552 阅读 · 0 评论