汇编第二章知识总结

今天刚学完第二章,以下是一些学习到的内容。

首先是CPU的概述

1.一个典型CPU由运算器、控制器和寄存器等器件组成。

2.内部总线实现CPU内部各个部件之间的联系。

3.外部总线实现CPU和主板上其他器件的联系。

通用寄存器

1.8086CPU所用的寄存器都是16位的,可以存放2个字节。AX,BX,CX,DX这四个寄存器都唱用来存放一般性数据,被称为通用寄存器

2.为了保证与上一代8位CPU兼容,8086CPU的AX、BX、CX、DX可分为两个可独立使用的8位寄存器。

AX可分为AH和AL BX可分为BH和BL CX可分为CH和CL DX可分为DH和DX

出于对兼容性的考虑,8086CPU可以一次性处理以下两种尺寸的数据。

字节:内存划分的基本单位

字:两个字节,分别称为高位字节,和低位字节。

 双字:四个字节

四字:八个字节

汇编指令

有的内存单元构成的空间是一个一维的线性地址,每一个内存单元在这个空间中都有唯一的地址,我们将这个唯一的地址称为物理地址。CPU通过地址总线送入存储器的,必须是一个内存单元的物理地址。

16位结构描述了一个描述了一个CPU具有以下几方面的结构特性:

运算器一次最多可以处理16位的字节

寄存器的最大宽度为16位。 

寄存器和运算器之间的通路为16位。

8086CPU给出物理地址的方位

8086CPU有20位地址总线,可以传送20位地址,达到1MB寻址能力。8086CPU又是16位地址,表现出的寻址能力只有64KB。采用一种在内部用2个16位地址合成的方法来形成一个20位地址。

当8086CPU要读写内存时:地址加法器采用 物理地址=段地址 $\times$ 16+偏移地址 的方法合成物理地址。

CPU中的相关部件提供两个16位地址,一个称为段地址,另一个称为偏移地址。

地址和偏移地址通过内部总线送入一个称为地址加法器的部件。

地址加法器将两个16位地址合成为一个20位的物理地址。

地址加法器通过内部总线将20位物理地址送入输入输出控制电路。

输入输出控制电路将20位物理地址送上地址总线。20位物理地址北地址总线传送到存储器。


“段地址  + 偏移地址= 物理地址“的本质含义

段地址:偏移地址 也称为 逻辑地址 。

段地址 $\times$ 16构成短的起始物理地址。


段寄存器

8086CPU有4个段寄存器中:CS,DS,SS,ES。

CS和IP

CS和IP是8086CPU中最关键的寄存器。

CS为代码段寄存器,用于存放代码段的段地址。

IP为指令指针寄存器,用于存放CPU将要读取的指令在代码段中的偏移地址。

CS:IP对应的物理地址存放是CPU将要读取的指令。

 

原文地址:https://www.cnblogs.com/ljw376386/p/9756428.html

时间: 2024-10-07 16:46:13

汇编第二章知识总结的相关文章

第二章 知识图谱——机器大脑中的知识库

第二章 知识图谱——机器大脑中的知识库 作者:刘知远(清华大学):整理:林颖(RPI) 版权所有,转载请注明出处 知识就是力量.——[英]弗兰西斯·培根 1 什么是知识图谱 在互联网时代,搜索引擎是人们在线获取信息和知识的重要工具.当用户输入一个查询词,搜索引擎会返回它认为与这个关键词最相关的网页.从诞生之日起,搜索引擎就是这样的模式,直到2012年5月,搜索引擎巨头谷歌在它的搜索页面中首次引入“知识图谱”:用户除了得到搜索网页链接外,还将看到与查询词有关的更加智能化的答案.如下图所示,当用户输

汇编第二章--基础知识梳理与总结

第一章,我们介绍了有关汇编语言的基础知识,在第二章我们主要介绍寄存器. CPU的主要部件是寄存器,在8086CPU有14个寄存器,它们分别是:AX.BX.CX.DX.SI.DI.SP.BP.IP.CS.SS.DS.ES.PSW.8086CPU的所有寄存器都是16位的,可以存放两个字节.AX.BX.CX.DX这4个寄存器通常用来存放一般性的数据,称为通用寄存器.由于8086CPU的上一代CPU中的寄存器都是8位的,为了保持兼容,8086CPU的AX.BX.CX.DX这4个寄存器都可分为两个独立使用

汇编语言第二章知识梳理及思考

第二章 寄存器(CPU工作原理) CPU概述 CPU由运算器.控制器.寄存器等器件组成,这些器件靠内部总线相连. 内部总线实现CPU内部各个器件之间的联系. 外部总线实现CPU和主板上其他器件的联系. 寄存器概述 8086CPU有14个寄存器: AX.BX.CX.DX.SI.DI.SP.BP.IP.CS.SS.DS.ES.PSW. 2.1通用寄存器 8086CPU所有的寄存器都是16位的,可以存放两个字节. 通用寄存器:AX.BX.CX.DX通常用来存放一般性数据. 以AX为例,寄存器的逻辑结构

汇编第二章梳理(期末复习)

(留着几个课后任务没写,临近学期末,全当复习了.因为是为复习用的,所以文章比较自闭,) 第二章标题叫寄存器,那么大概就是讲和寄存器有关的东西,准确说是单纯寄存器之间操作,还有 debug 的操作(在实验部分). 8086有14个寄存器,AX,BX,CX,DX,SI,DI,SP,BP,IP,CS,SS,DS,ES,PSW.这些寄存器都是16位的,可以存放两个字节.其中,AX,BX,CX,DX 用来存放一般的数据,为通用寄存器.为了兼容性,这四个寄存器分别可以拆分为两个8位寄存器独立使用.高位字节为

第二章知识梳理

思维导图 基本数据类型 布尔型bool 整型:int.short.long 浮点型:float.double.long double 字符型:char 枚举型:enum 运算表达式(注意运算优先级) 算数:+.-.*./.% 赋值:=   例:a=4 逗号:,  例:a=3*5,a*4 逻辑:<.<=.>>=.==.!=.!.&&.|| 条件:_?_:_ sizeof: sizeof(类型名)       sizeof 表达式 位运算:注意二进制比特位运算 基本控制

专业课第二章知识总结

第二章我们主要学习了高级语言构成有:数据类型.变量常量.标识符.关键字.运算符表达式和语句等. java数据类型是用来表示计算机内存的特定方法.主要分为两种一种是基本类型有:整形(byte,short,int,long).浮点型(float,double).字符型(char).布尔型(boolean).另外一种是引用类型是String字符串. 在java中变量是程序中最基本的存储单元其中就包括数据类型,和变量名和变量值,而我们在声明变量时应定义一个数据类型然后定义变量名和初始值: 常量声明必须先

第二章知识汇总

2.1 通用寄存器 1,AX,BX,CX,DX被称为通用寄存器 2,AX可分为AH,AL...... 2.2 字在寄存器中的存储 1,字节:记为byte,一个字节由8bit组成 字:记为word,一个字由两个字节组成,分别是高位(AH)和低位字节(AL) 2.3 几条汇编指令 1, mov ax 18    AX=18 mov ah 78    AH=78 add ax 8       AX=AX+18 mov ax bx    AX=BX     两个对象的位数一样 add ax bx   

行为统计学第二章知识总结(未完)

如何将数据组织成某些可理解的形式,使得他可以比较容易地发现数据的趋势,并与其他人交流,这就是描述性统计的任务:简化结构并整理组织数据.整理一组数据的最常用过程是将数据放入一个频数分布. 频数分布是一种组织好的关于位于测量量表每个类别上的个体数目的数据表. 频数分布的结构可以是表或涂,但是,在这两种情况下分布都具有两个相同的元素: 1.组成最初测量量表的类别. 2.频数的记录或每个类别中的个体数目. 比例与百分率 除了频数粉笔中的两个基本列外,表中还可以加入其它描述数据分布的测量.最常用的两种测量

JavaOO第二章知识总结

一.数据类型 (一).整数类型 1 数据类型是一种易于人类阅读的标记,用来表示计算机内存的特定用法. 2 在程序中使用时,数据类型规定所使用内存的大小以及在该内存中可存放的有效值. 3 Java是一种强类型编程语言,这意味着在Java程序中用到的所有变量都必须有明确定义的数据类型. 4 ava中定义了4类8种基本数据类型 5 Java把内存划分为堆.栈.数据区.常量区.代码块:而基本数据类型一般放在栈中. 逻辑型boolean (布尔) 字符型char 整数型byte.short.int.lon