zoukankan      html  css  js  c++  java
  • 8086汇编教程之 基础知识

    基础知识

    机器语言

    机器语言是机器指令的集合

    机器语言就是一台机器可以正确执行的命令

    指令:01010000(PUSH AX)

    汇编语言

    • 机器指令:1000100111011000
    • 操作:寄存器BX的内容送到AX中
    • 汇编指令:MOV AX,BX
    • 这样的写法便于阅读和记忆

    汇编语言的组成

    • 汇编语言由以下3类组成
      • 汇编指令(机器码的助记符)
      • 伪指令(由编译器执行)
      • 其他符号(由编译器执行)
    • 汇编语言的核心是汇编指令,它决定了汇编语言的特性

    存储器

    • CPU是计算机的核心部件,它控制整个计算机的运行并进行运算,要想让CPU运作,必须向它提供指令和数据
    • 指令和数据在存储器中存放,也就是平时说的内存
    • 在一台PC中内存的作用仅次于CPU
    • 磁盘不同于内存,磁盘上的数据或程序如果不读到内存中就不能被CPU使用

    指令和数据

    • 指令和数据是应用上的概念

    • 在内存或磁盘中,指令和数据没有任何区别,都是二进制信息

    • 1000100111011000 -> 35288 -> 89D8H(数据)

      1000100111011000 -> MOV AX,BX(指令)

    存储单元

    • 存储器被划分为若干个存储单元,每个存储单元从0开始顺序编号
    • 容量单位:
      • 1KB = 1024B
      • 1MB = 1024KB
      • 1GB = 1024MB
      • 1TB = 1024GB

    CPU对存储器的读写

    • CPU想要进行数据的读写,必须和外部器件(芯片)进行三类信息的交互:

      • 存储单元的地址(地址信息)
      • 器件的选择,读或写命令(控制信息)
      • 读或写的数据(数据信息)
    • 在计算机中有专门连接CPU和其他芯片的导线,通常称为总线

      • 物理上:一根根导线的集合
      • 逻辑上划分为:
        • 地址总线
        • 数据总线
        • 控制总线
    • 对于8086CPU,下面的机器码能够完成从3号单元读数据

      • 机器码:101000000000001100000000
      • 含义:从3号单元读取数据送入寄存器AX

    地址总线

    • CPU是通过地址总线来指定存储单元的

    • 地址总线上能传送多少不同的信息,CPU就可以对多少个存储单元进行寻址

    • 地址总线的数量就是电脑的位数(32位,64位)

      • 要达到64位的速度,你要有
        1. 64位的CPU
        2. 64位的操作系统
        3. 64位的软件

    • 一个CPU有N根地址总线,则可以说这个CPU的地址总线的宽度为N
    • 这样的CPU最多可以寻找2的N次方个内存单元

    数据总线

    • CPU与内存或其他器件之间的数据传送是通过数据总线进行的
    • 数据总线的宽度决定了CPU和外界的数据传送速度

    控制总线

    • CPU对外部器件的控制是通过控制总线来进行的。在这里控制总线是个总称,控制总线是一些不同控制线的集合
    • 有多少根控制总线,就意味着CPU提供了对外部器件的多少种控制

    内存地址空间

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

    主板

    • 在每一台PC机中,都有一个主板,主板上有核心器件和一些主要器件
    • 这些器件通过总线相连

    接口卡

    • 计算机系统中,所有可用程序控制其运作的设备,必须受到CPU的控制
    • CPU对外部设备不能直接控制,如显示器、音响等。直接控制这些设备进行运作的是插在拓展插槽上的接口卡

    各类存储器芯片

    • 从读写属性上看分为两类:

      • 随机存储器(RAM)
      • 只读存储器(ROM)
    • 从功能和连接上分类:

      • 随机存储器RAM
      • 装有BIOS的ROM
      • 接口卡上的RAM

    • 上述存储器在物理上是独立的,但它们在以下两点上相同:

      • 都和CPU的总线相连
      • CPU对它们进行读和写的时候都通过控制线发出内存读写命令
    • 将各类存储器看作一个逻辑存储器:

      • 所有的物理存储器被看作一个由若干存储单元组成的逻辑存储器
      • 每个物理存储器在这个逻辑储存器中占有一个地址段,即一段地址空间
      • CPU在这段地址空间中读写数据,实际上就是在相对应的物理存储器中读写数据

    • 不同计算机系统的内存地址空间分配情况是不同的

    • 内存地址空间:

      • 最终运行程序的是CPU,编程的时候,必须要从CPU角度考虑问题
  • 相关阅读:
    移动端开发常见的坑
    javascript的原始类型(primitive type)之间的关系。
    微信小程序学习:开发注意点
    canvas学习(一):线条,图像变换和状态保存
    css模仿微信弹出菜单
    html5 canvas绘制环形进度条,环形渐变色仪表图
    vue学习笔记(三):vue-cli脚手架搭建
    nodejs基础学习
    css3美化radio样式
    基于angular+bower+glup的webapp
  • 原文地址:https://www.cnblogs.com/zhujiangyu/p/14394591.html
Copyright © 2011-2022 走看看