zoukankan      html  css  js  c++  java
  • 汇编02:基础知识

    基础知识

    机器语言和汇编语言

    机器语言是机器指令的集合,是一列二进制数字,每一种微处理器都有自己的机器指令集。因为机器语言难以记忆,容易出错,故诞生了汇编语言。汇编语言由汇编指令组成,汇编指令是机器指令便于记忆的格式。汇编语言可以由编译器将其编译为机器码,由计算机最终执行。

    汇编语言有以下3类指令组成:

    1、汇编指令(汇编语言的核心):机器码的助记符

    2、伪指令:没有对应的机器码,由编译器执行,计算机并不执行

    3、其他符号:如+、-、*、/等,由编译器识别,没有对应的机器码

    总线

    CPU通过总线连接其他元件,总线从物理上讲,就是一根根导线的集合,根据传送信息的不同,总线从逻辑上有又分成三类:地址总线、控制总线和数据总线。

    以CPU从3号单元读取数据的过程为例:

    这个过程分为以下几个步骤:

    1、CPU通过地址线将地址信息3发出

    2、CPU通过控制线发出内存读命令,选中存储器芯片并通知它

    3、存储器将3号单元中的数据8通过数据线送入CPU中

    CPU从内存中读的操作也类似,都是通过总线来传递数据的。几种总线的特点如下:

    1、地址总线

    CPU是通过地址总线来指定存储器单元的,地址总线能传送多少个不同的信息,CPU就可以对多少存储单元进行寻址。CPU有N根地址线,又称CPU的总线宽度为N,这样的CPU最多可以寻找2的N次方个内存单元。如CPU的地址总线宽度为10,可以寻址1024个内存单元,这1024个内存单元就构成这个CPU的内存地址空间。

    2、数据总线

    数据总线的宽度决定了CPU和外界的数据传输速度。

    3、控制总线

    控制总线的宽度决定了CPU对外部器件的控制能力。一个控制指令通常要涉及多根控制线,控制线又分为读信号输出和写信号输出。

    各类存储器芯片

    计算机中装有多个存储器芯片,这些芯片从读写属性上看分为两类:随机存储器(RAM)和只读存储器(ROM),随机存储器可读可写,但必须带电存储,关机后存储丢失;只读存储器只能读不能写,关机后其中的内容不丢失,这些存储器具体分为以下几类:

    1、随机存储器:用于存放供CPU使用的绝大部分程序和数据。主随机存储器一般分为装在主板上的RAM和插在扩展插槽上的RAM。

    2、装有BIOS(基本输入输出系统)的ROM:

    BIOS是装在硬件上的软件系统,可以通过它利用该硬件进行最基本的输入和输出。包括主板上的ROM中存储着主板的BIOS、显卡上的ROM中存储着显卡的BIOS、网卡上的ROM中存储网卡的BIOS。

    3、接口卡上的RAM:

    某些接口卡需要对大批量输入、输出数据进行暂时存储,最典型的是显示卡上的RAM,一般称为显存,将要显示的内容写入显存,显示卡负责将显存中的数据在显示器上显示出来。

    下图展示了PC系统中各类存储器的情况:

    内存地址空间

    虽然存储器类型很多,但是CPU在向它们发出指令的时候都是通过总线,把它们看做一个由若干存储单元组成的逻辑存储器,也就是内存地址空间。

    示意图如下:

    所有存储器都被看做是内存地址空间的一部分,它们各自对应一段地址空间。每一个内存单元在内存地址空间中都有唯一的地址,我们将这个唯一的地址称为物理地址。

    我们想在某类存储器中读写数据时,必须知道它第一个单元的地址和最后一个单元的地址,才能保证读写操作是在预期的存储器中进行。不同的计算机系统的内存地址空间分配情况不同。

  • 相关阅读:
    Northwind测试学习用数据库
    DataTables在回调方法中使用api
    DataTables获取表单输入框数据
    DataTables选择行并删除(删除单行)
    DataTables选择多行
    DataTables给每一列添加下拉框搜索
    AngularJS 父子控制器
    更改AngularJS的语法解析符号
    AngularJS中的控制器示例_3
    AngularJS中的控制器示例_2
  • 原文地址:https://www.cnblogs.com/yinyunmoyi/p/12811438.html
Copyright © 2011-2022 走看看