计算机组成原理二
2014-10-12 15:06
459 查看
1.指令的格式
每条指令等长,均为2个字节
第一个字节的高四位是操作码,低四位作为表示寄存器号
第二个字节是存储单元地址
2.计算机启动过程:
(1)计算机启动后,从BIOS芯片中取出指令,进行执行,这段程序就是在实模式在进行的。
(2)设置CPU中PE=1,操作系统进入保护模式,如果任务需要会进入虚拟8086模式(之间任务的切换,中断返回),不管处在哪一个模式一旦系统复位都会从实模式重新开始。
3.小知识
1985年,Intel公司提出了IA-32的x86体系结构,cpu进入了32位时代,可以内存寻址4G大小空间,同时也引入了虚拟内存管理的概念。x86之所以今天可以保持大的市场份额,是因为x86始终保持着向前兼容的特性,并且不降低性能。
2003年,AMD公司提出了x86-64体系结构,cpu进入了64位时代,理论可以寻址2^64byte,但实际达不到。Intel后来也提出了IA-64体系结构,但与之前32位系统不兼容,所以Intel后来放弃了IA-64体系结构。
在x86-64体系结构中向前兼容的运行模式称为传统模式(Legacy mode),而与之对应的为长模式(Long mode)。
8086中IP寄存器只有16位,所以寻址范围在16K以内,而地址总线位20位,故寻址需要借助于段寄存器。
最终地址计算方法: 逻辑地址 = 段基址<<4 + offset(偏移量)
4.寄存器:
在X86-64中的通用寄存器,其中有4个数据寄存器。
FLAGS标志CPU的运行状态
5. Application for Segment Register(8086) :
Let's take an example :
MOV AX , [3000H]
CPU will notice we need a value in the Memory, so it will firstly visit the Data Segment
first step: get the value of Data Segment in
DS Register we suspect it is 2000H
second step: Physical address = 2000H * 16 + 3000H = 23000H
//3000H is an offset
6.堆栈段
其中SS指定这个区域的起始地址。PUSH和POP指令都是从SP寄存器获得堆栈的段内偏移量,顾名思义其英文表达式也就是:STACK POINTER
每条指令等长,均为2个字节
第一个字节的高四位是操作码,低四位作为表示寄存器号
第二个字节是存储单元地址
2.计算机启动过程:
(1)计算机启动后,从BIOS芯片中取出指令,进行执行,这段程序就是在实模式在进行的。
(2)设置CPU中PE=1,操作系统进入保护模式,如果任务需要会进入虚拟8086模式(之间任务的切换,中断返回),不管处在哪一个模式一旦系统复位都会从实模式重新开始。
3.小知识
1985年,Intel公司提出了IA-32的x86体系结构,cpu进入了32位时代,可以内存寻址4G大小空间,同时也引入了虚拟内存管理的概念。x86之所以今天可以保持大的市场份额,是因为x86始终保持着向前兼容的特性,并且不降低性能。
2003年,AMD公司提出了x86-64体系结构,cpu进入了64位时代,理论可以寻址2^64byte,但实际达不到。Intel后来也提出了IA-64体系结构,但与之前32位系统不兼容,所以Intel后来放弃了IA-64体系结构。
在x86-64体系结构中向前兼容的运行模式称为传统模式(Legacy mode),而与之对应的为长模式(Long mode)。
8086中IP寄存器只有16位,所以寻址范围在16K以内,而地址总线位20位,故寻址需要借助于段寄存器。
最终地址计算方法: 逻辑地址 = 段基址<<4 + offset(偏移量)
4.寄存器:
在X86-64中的通用寄存器,其中有4个数据寄存器。
FLAGS标志CPU的运行状态
5. Application for Segment Register(8086) :
Let's take an example :
MOV AX , [3000H]
CPU will notice we need a value in the Memory, so it will firstly visit the Data Segment
first step: get the value of Data Segment in
DS Register we suspect it is 2000H
second step: Physical address = 2000H * 16 + 3000H = 23000H
//3000H is an offset
6.堆栈段
其中SS指定这个区域的起始地址。PUSH和POP指令都是从SP寄存器获得堆栈的段内偏移量,顾名思义其英文表达式也就是:STACK POINTER
相关文章推荐
- 计算机组成原理
- 计算机组成原理重点总结(二)
- 计算机网络,操作系统,数据结构,算法设计,计算机组成原理,数据库,概率论 零散知识库
- 计算机组成原理1
- 计算机组成原理--计算机硬件基础之主板
- 计算机组成原理2----内部存储器
- 添物不花钱学计算机及编程(预备篇)— 计算机组成和原理
- 计算机组成原理 实验1 Cache模拟器的实现
- 软考 之 计算机组成原理
- 计算机组成原理 第一章
- 计算机组成原理--算术逻辑
- 计算机组成原理基本知识
- 软考之路(5)——计算机组成原理之加密技术和认证技术
- 枯燥的计算机组成原理课.....!!! 看来只能自己看书消化了...!!!
- 计算机组成原理学习笔记(一)
- 『计算机组成原理』二进制转化十进制的简便方法(小节)
- 计算机组成原理之存储器总结---来自北大陆俊林老师的视频内容(2)
- 计算机组成原理概述
- 计算机组成原理实验三:二进制补码加法器
- 计算机组成原理试题2