汇编(二)

一. 总线

image.png
  • 每一个CPU芯片都有许多管脚,这些管脚和总线相连,CPU通过总线跟外部器件进行交互
  • 总线: 一根根导线的集合
  • 总线的分类:
    • 地址总线
    • 数据总线
    • 控制总线
计算机基本结构.png

举个🌰 :

总线作用.png

该图作用:

  • CPU 通过地址线找到3号单元的地址
  • 同时CPU通过控制线发出内存读命令
  • 内存通过数据线将3号单元相关数据通过数据线返回给CPU

二. 总线类别

  • 地址总线:

    • 它的宽度决定了CPU的寻址能力
    • 8086的地址总线宽度是20,所以寻址能力是1M(2 ^ 20)
  • 数据总线

  • 它的宽度决定了CPU的单次数据传送量,也就是数据传送速度

  • 8086的数据总线宽度是16,所以单次最大传递2个字节的数据

  • 控制总线

    • 它的宽度决定了CPU对其他器件的控制能力,能有多少种控制。

三. 数据总线

  • 8088的数据总线宽度是88086的数据总线宽度是16,分别向内侧中写入89D8H如下图所示:
    注意:这里是16进制,后方的H是单词Hexadecimal的意思。
8088数据总线传输.png
image.png

四.练习

  • 一个CPU 的寻址能力为8KB,那么它的地址总线的宽度为____

  • 8080,8088,80286,80386 的地址总线宽度分别为16根,20根,24根,32根.那么他们的寻址能力分别为多少____KB, ____MB,____MB,____GB?

  • 8080,8088,8086,80286,80386 的数据总线宽度分别为8根,8根,16根,16根,32根.那么它们一次可以传输的数据为:____B,____B,____B,____B,____B,

  • 从内存中读取1024字节的数据,8086至少要读____次,80386至少要读取____次.

答案:

答案.png

解答:

  1. 因为 2 ^ 10 = 1024,2 ^ 20 = 1024 * 1024 = 1M ;所以8K = 8 * 1024 = 2 ^ 3 * 2 ^ 10 = 2 ^ 13

  2. 16根地址总线就是2 ^ 16 = 64 KB, 20根地址总线就是2 * 20 = 1M24根地址总线就是2 ^ 24 = 16M; 32根地址总线就是2^32 = 1024 * 1024 * 1024 * 2^2 = 4GB

  3. 1根数据线能传输1bit8根数据线能传输1字节,所以162字节,324字节。

  4. 因为8086数据有16根数据线,每次可以传输2个字节,8038632根数据线,一次可以传输4个字节,所以8086至少要读512字节,80386至少要读256字节。

五. 内存

各类存储器的逻辑连接.png
各类存储器的逻辑连接.png
各类存储器的物理地址情况.png
  • 内存地址空间的大小受CPU地址总线宽度的限制。8086的地址总线宽度为20,可以定位2^20个不同的内存单元(内存地址范围0x000000~0xFFFFF),所以8086内存空间大小1MB
    -0x00000 ~ 0x9FFFF:主存储器。可读可写
    -0xA0000 ~ 0xBFFFF:向显存中写入数据,这些数据会被显卡输出到显示器。可读可写。
  • 0xC0000 ~ 0xFFFFF:存储各种硬件、系统信息。只读。

六. 寄存器

内部部件之间由总线连接:

CPU的典型构成.png
  • 对程序员来说,CPU中最主要部件是寄存器,可以通过改变寄存器的内容来实现对CPU的控制
  • 不同的CPU,寄存器个数、结构是不相同的(808616位结构的CPU)
  • 808614个寄存器
    • 都是16位的寄存器
    • 可以存放2个字节
8086内部寄存器.png

通用寄存器:

  • AX、BX、CX、DX这4个寄存器通常用来存放一般性的数据,称为通用寄存器(有时也有特定用途)
  • 通常,CPU会先将内存中的数据存储到通用寄存器中,然后再对通用寄存器中的数据进行运算
  • 假设内存中有块红色内存空间的值3,现在想把它的值加1,并将结果存储到蓝色内存中
image.png
  • 首先CPU会将红色内存空间的值放到AX寄存器中: mov ax, 红色内存空间值

  • 然后让AX寄存器与1相加: add ax, 1

  • 最后将值赋值给内存空间: mov 蓝色内存空间,ax

  • AX、BX、CX、DX4个通用寄存器都是16位的,如下图所示:

image.png
  • 因为上一代8086的寄存器都是8位的,为了保证兼容,AX、BX、CX、DX都可以分为2个独立的8位寄存器来使用
    • H代表高位寄存器
    • L代表低位寄存器
image.png
image.png

字和字节

  • 在汇编的数据存储中,有2个比较常用的单位
  • 字节: byte, 1个字节由8bit组成,可以存储在8位寄存器中
  • 字: word,1个字有两个字节组成,这2个字节分为成为字的高字节和低字节
  • 比如数据2000(4E20H, 01001110000100000B),高字节是78,低字节是32.
image.png
  • 1个字可以存在1个16位寄存器中,这个字的高字节,低字节分别存储在这个寄存器的高8位寄存器,低8位寄存器中。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,651评论 6 501
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,468评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,931评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,218评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,234评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,198评论 1 299
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,084评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,926评论 0 274
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,341评论 1 311
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,563评论 2 333
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,731评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,430评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,036评论 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,676评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,829评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,743评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,629评论 2 354

推荐阅读更多精彩内容

  • 8086汇编 本笔记是笔者观看小甲鱼老师(鱼C论坛)《零基础入门学习汇编语言》系列视频的笔记,在此感谢他和像他一样...
    Gibbs基阅读 37,190评论 8 114
  • 总线 每一个CPU芯片都有许多管脚,这些管脚和总线相连,CPU通过总线跟外部器件进行交互 总线:一根根导线的集合 ...
    小小鱼类阅读 493评论 0 0
  • 总线 每一个CPU芯片都有许多管脚,这些管脚和总线相连,CPU通过总线跟外部器件进行交互 总线:一根根导线的集合 ...
    Stone_熊小叔阅读 282评论 0 0
  • 寄存器 内部部件之间由总线连接 对程序员来说,CPU中最主要部件是寄存器,可以通过改变寄存器的内容来实现对CPU的...
    请叫我Hank阅读 4,844评论 10 15
  • 总线 每一个CPU芯片都有许多管脚,这些管脚和总线相连,CPU通过总线跟外部器件进行交互 总线:一根根导线的集合 ...
    为自己丶拼个未来阅读 376评论 2 2