美文网首页读书笔记iOS Developer程序员
(2018年4月3号重编)《汇编语言(第三版)》笔记(一) -

(2018年4月3号重编)《汇编语言(第三版)》笔记(一) -

作者: 百草纪 | 来源:发表于2017-05-28 10:48 被阅读64次

    2017年6月14号重编,加思维导图。
    2018年4月1号重编,调整,纠错。
    2018年4月3号重编,调整思维导图。

    Snip20180403_1.png

    第一章:基础知识

    • 汇编语言是直接在硬件之上工作的编程语言。
    • 《微机原理与接口》:关于 PC 机及 CPU 物理结构和编程结构全面研究
    • 《组成原理》:计算机一般的结构、功能、性能的研究
    • 本书重点:如何利用硬件系统的编程结构和指令集有效灵活地控制系统进行工作。

    1.机器语言

    • 机器指令的集合。
    • 机器指令是一台机器可以正确执行的命令,是一列二进制数字,计算机再将其转为高低电平,从而进行运算。
    • 早期计算机概念:可以执行机器指令,进行运算的机器。
    • 如今以上功能由 PC 机内的 CPU(中央处理单元) 完成。CPU 是一种微型处理器。
    • 近代计算机概念:由 CPU 和其他受 CPU 直接或间接控制的芯片、器件、设备组成计算机系统
    • 由于硬件设计和内部结构不同,每一种微处理器都有自己的机器指令集

    2.汇编语言的产生

    • 汇编语言的主体是汇编指令。和机器指令的区别在于指令的表示方法上。
    Snip20170514_1.png
    • 寄存器:CPU 中可以存储数据的器件,一个 CPU 中有多个寄存器。AXBX都是寄存器的代号。
    • 编译器:提供将汇编指令转换成机器指令的程序
    Snip20170528_1.png

    3.汇编语言的组成

    • 以下三类指令组成
      • 汇编指令(核心):机器码的助记符,有对应的机器码。
      • 伪指令:没有对应的机器码,由编译器执行,计算机并不执行。
      • 其他符号:由编译器识别,没有对映的机器码。

    推荐详细了解底层结构的书籍:编码的奥秘

    4.存储器

    • CPU 是计算机的核心部件,控制整个计算机的运作并运算。
    • 让 CPU 工作,需要向它提供指令和数据,指令和数据存储在储存器中(内存)
    • 磁盘不同于内存,磁盘上的数据或程序不读到内存中,就无法被CPU使用。

    5.指令和数据

    • 都是二进制信息,只是在应用上的概念,程序员为同样的信息赋予了不同的意义。
    Snip20170526_9.png

    6.存储单元

    • 存储器被划分成若干个存储单元,每个存储单元从 0 开始顺序编号。
    • 一个存储单元只能存储一Byte(字节,即 8 bit,比特)的数据
    • 存储器不一定是内存,如:显存。

    7.CPU对存储器的读写

    • CPU要进行数据的读写,必须进行以下交互:
    • 存储单元的地址(地址信息)
    • 器件选择,读或写的命令(控制信息)
    • 读或写的数据(数据信息)
    • 计算机通过电信号处理、传递信息,电信号通过导线传递。专门有连接 CPU 和其他芯片的导线,通常称为总线(物理角度:一根根导线的集合)。根据传递的信息的不同,又分为:地址总线、控制总线和数据总线。
    汇编1.gif
    • 命令计算机进行数据的读写。
    • 向它输入能够驱动它进行工作的电平信息(机器码,高/低电平)。
    Snip20170526_11.png

    8.地址总线

    • 指定存储器单元。
    • 一个 CPU 有 N 根地址线,则这个 CPU 的地址总线的宽度为 N,最多可以表示 2 的 N 次方个不同的地内存单元。
    • 达到真正的64 位的操作速度:CPU(64),系统(64),软件(64).
    Snip20170528_3.png

    9.数据总线

    • CPU 与内存或其他器件之间的数据传送
    • 数据总线的宽度决定了 CPU 和外界数据的传送速度。
    • 一根数据总线一次可传送一个一位二进制数据(即 1 bit,1/8的字节(Byte))

    10.控制总线

    • CPU对外界器件的控制
    • 有多少根控制总线,意味着 CPU 提供了外部器件的多少种控制,所以控制总线的宽度决定了 CPU 对外部器件的控制能力。
    Snip20170527_4.png

    11.内存地址空间(概念)

    • 一个 CPU 的地址总线宽度为 10 ,那么可以寻址 1024 个内存单元,这 1024 个可寻到的内存单元就构成这个 CPU 的内存地址空间。

    12.主板

    • 每台计算机中都有一个主板,包含核心器件和主要器件,通过总线相连。
    • CPU、存储器、外围芯片组、扩展插槽等。扩展插槽上一般有内存条和各类接口卡。

    13.接口卡

    • 计算机系统中,所有可用程序控制其工作的设备,必须受到 CPU 的控制。
    • 直接控制外部设备的是扩展卡槽上的接口卡,扩展卡槽通过总线和 CPU 相连,对外部设备实现间接控制。

    14.各类储存器芯片

    • 从读写属性可分两类
    • 随机存储器(RAM):可读可写,但必须带电存储,关机后内容丢失
    • 只读存储器(ROM):只读取不能写入,关机后内容不丢失。
    • 从功能连接上又可分类
    • 随机存储器:存放 CPU 绝大部分程序和数据,一般由装在主板上的 RAM 和插在扩展插槽上的 RAM 组成。
    • 装有 BIOS 的 ROM:BIOS 是由主板和各类接口卡(如显卡、网卡)厂商提供的软件系统,对该硬件设备实现最基本的输入输出。在主板和某些接口卡上插有对应设备的相应 BIOS 的 ROM。如:主板的 ROM中存储着主板的 BIOS,显卡的 ROM中存储着显卡的 BIOS。
    • 接口卡上的RAM:某些接口卡需要对大批量输入、输出数据进行暂时存储,在其上装有 RAM,如显卡。
    Snip20170528_4.png

    15.内存地址空间

    • 上述存储器在以下两点上相同:
      • 都和 CPU 的总线相连。
      • CPU 对它们进行读写命令时都是通过控制线发出。
    • CPU 将各类存储器看作一个逻辑存储器(内存地址空间):
      • 所有的物理存储器被看作一个由若干存储单元组成的逻辑存储器。
      • 每个物理存储器在这个逻辑存储器中占有一个地址段,即一段地址空间。
      • CPU 在这段地址空间中读写数据,实际上就是在相对应地物理存储器中读写数据。
    Snip20170528_5.png

    相关文章

      网友评论

        本文标题:(2018年4月3号重编)《汇编语言(第三版)》笔记(一) -

        本文链接:https://www.haomeiwen.com/subject/tbocfxtx.html