汇编笔记_1

-------1.1 机器语言---------

机器语言是机器指令的集合
进制转换
十位,八位,十六位(H)

------1.2 汇编语言的产生------

汇编语言的主体是汇编指令
汇编指令和机器指令的差别在于指令的表示方法上。
汇编指令是机器指令便于记忆的书写格式。
汇编指令是机器指令的助记符

例如:
   机器指令:1000100111011000
   操作:寄存器BX的内容送到AX中
   汇编指令:MOV AX,BX

寄存器:简单的讲是CPU中可以存储数据的器件,
一个CPU中有多个寄存器(寄存器更接近CPU)。
如:AX,BX寄存器

----1.3 汇编语言的组成---------

汇编语言由以下3类组成:
1.汇编指令 (机器码的助记符)
2.伪指令   (由编译器执行)
3.其他符号 (由编译器识别)

汇编语言的核心是汇编指令,它决定了汇编语言的特性。
推荐:《编码的奥秘》

-----1.4 存储器-------------

CPU是计算机的核心部件,他控制整个计算机的运作并进行运算,要想让一个CPU,就必须向他提供指令和数据。
指令和数据在存储器中存放,也就是平时所说的内存。

-----1.5 指令和数据---------

指令和数据是应用上的概念
例如:
 二进制信息:
     1000100111011000
       89D8H(数据)

1000100111011000
         MOV AX,BX(程序)

-------1.6 存储单元---------

存储器被划分为如萍钢哥存储单元,每个存储单元从0开始顺序编号

例如:
  一个存储器有128个单元,则是从0~127.
  计量容量:以2^10计

------1.7 CPU对存储器的读和写---------

CPU要想进行数据的读和写,必须和外部器件(标准的说法是芯片)
进行三类信息的交互:
存储单元的地址         (地址信息)
器件的选择,读或写命令 (控制信息)
读或写的数据           (数据信息)

在计算机中专门有链接CPU和其他芯片的导向,通常称为总线。

------1.8 地址总线-------------

CPU是通过地址总线来制定存储单元的。

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

电脑32位64位就是这个系统的寻址能力为32位的和64位的。

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

-----1.9 数据总线-------------

CPU与内存或其他器件之间的数据传送,是通过数据总线来进行的。

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

如:8088CPU(8位)和8086CPU(16位),
    在传输速度方面后者是前者的两倍。

------1.10 控制总线----------

CPU对外部器件的控制是通过控制总线来进行的,在这里控制总线
是一些不同控制线的集合。
有多少根空值总线,就意味着CPU提供了对外部器件的多少控制。
所以,控制总线的宽度决定了CPU对外部器件的控制能力。

-----1.11 内存地址空间---------

一个地址宽度为10,他能寻址1024个内存单元。则这些内存单元就构成这个CPU的内存地址空间。

-----------------小  结---------------

1.汇编指令是机器指令的助记符,同机器指令一一对应。
2.每一种CPU都有自己的汇编指令集。
3.CPU可以直接使用的信息在存储器中存放。
4.在存储器中指令和数据没有任何区别,都是二进制信息。
5.存储单元从零开始顺序编号。
6.一个存储单元可以存储8个bit(用作单位写成“b”),
即8位二进制数。
7.如:1B=8b       1kB=1024B
      1MB=1024KB  1GB=1024MB
8.每个CPU芯片都有许多管教,这些管脚和总线相连。
也可以说,这些管教引出总线。
一个CPU可以引出三种总线的宽度标志了这个CPU的不同方面的性能:

地址总线的宽度决定了CPU的寻址能力;
数据总线的宽度决定了CPU与其他器件进行数据传送时的一次
数据传送量;
控制总线的宽度决定了CPU对系统中其他器件的空值能力。
-----------------------------------------

时间: 2024-10-17 05:16:45

汇编笔记_1的相关文章

JAVA课程笔记_1

一 课程内容 set path查看路径信息:当编译一个程序或命令时,先从当前目录查找,如果没有,按path中的路径按顺序查找,先找到后就不查找后面的路径了. 可以将目录加入环境变量,set path="复制的路径" 可以在.java程序中编写多个类,当编译时,每个类生成各自的字节码文件. 由于多个类的字节码文件不利于管理,使用bin目录下的jar命令可以将多个字节码文件打包成jar包发布给其他程序员使用. 使用方法:先在命令提示符下输入jar,会出现使用方法和实例.Jar打包两个cla

《MySQL必知必会》学习笔记_1

#选择数据库 USE mysql #返回可用数据库列表 SHOW DATABASES #返回当前数据库中可用表 SHOW TABLES #返回表列 SHOW COLUMNS FROM db #显示特定数据库的创建语句 SHOW CREATE DATABASE mysql #显示广泛的服务器状态信息 SHOW STATUS #显示授权用户的安全权限 SHOW GRANTS 多条SQL语句必须以分号分隔. SQL语句不区分大小写,习惯性大写. 检索不同的行用DISTINCT,只返回不同的值. 限制结

Android_读书笔记_1

线程及异步操作 大体上阐述了异步处理的重要性,以及什么时候应该用异步处理等等巴拉巴拉...... 重点: 1: AsyncTask类的介绍及例子...... 通过继承AsyncTask类并实现其定义的事件方法,管理后台操作. 很方便的是AsyncTask类已经为异步操作创建好了一个简单的接口,我们只需实现这个接口就可以很快捷的实现异步操作. 并且在最新的几个SDK中,它能够通过若干个物理内核和一个内部线程池来同时管理多个任务. 包括: onPreExecute()方法在后台操作开始前运行在UI线

汇编笔记 RET

assume cs:code,ss:stack stack segment db 16 dup(0) stack ends code segment mov ax,4c00h int 21h start: mov ax,stack mov ss,ax mov sp,16 mov ax,0 push ax mov bx,0 ret code ends end start 以上指令,让IP指向0000,程序正常退出. 执行PUSH AX的时候,将AX中的数据放入桟中,SP=SP-2. 执行ret指令

王爽汇编笔记

  第一章 内存地址空间的地址段分配 地址:0~7FFFH的32kb空间为主随机存储器的地址空间 地址:8000~9FFFH的8kb空间为显存地址空间 地址:A000~FFFFH的24kb空间为各个rom的地址空间   第二章 进入DOS模式 重新启动计算机,进入DOS模式,此时进入的是实模式的DOS 在Windows中进入DOS方式,此时进入的是虚拟8086模式的DOS   使用命令 -R 查看寄存器内容 -R 寄存器 可以修改寄存器的内容 -D查看内存中的内容 –D 段地址:偏移地址 输入后

汇编笔记(1)

最近看王爽的汇编语言,同时配合小甲鱼的视频看了一些章节,对于一些知识点还有一些容易混淆的地方在这里总结一下,希望大家来指正. 第一章: 基础知识 一.汇编语言 计算机只识别机器码(0和1组成),非常难认,因此产生了汇编. 三类指令:汇编指令,伪指令,其他符号(由编译器识别). 二.存储器 数据和指令存放的地方.其实就是所说的内存. CPU的正常工作,就必须向它提供数据和指令. 指令和数据没有任何区别,都是二进制.CPU在工作时候,有的信息看作指令,有的信息看作数据. 每个存储单元从0开始顺序编号

汇编笔记二【32位通用寄存器 以及 常用汇编指令】

一.32位通用寄存器(EAX,ECX,EDX,EBP,ESP,EBP,ESI,EDI) 二.十六位通用寄存器(AX,CX,DX,BX,SP,BP,SI,DI) 三.八位通用寄存器(AH,AL,CH,CL,DH,DL,BH,BL) 四.32位,16位,8位寄存器之间的关系 1.寄存器都是高位在前,低位在后. 2.都是包含关系,32位寄存器之中包含了16位寄存器,16位寄存器之中包含了8位寄存器. 关系如下: 五.32位的含义 一位只能放0或1,32位就意味着能放32个0或1. 所以32位最小取值为

Computer Network学习笔记_1

1_1 开始学习David Weatherall讲的Computer Networks,第一节课主要讲Goals and Motivation,Focus of the course是Networking,讨论packets and internet,会讲底层的Communications和上层的Distributed systems,就是Network如何建立,上层apps能做什么.The main point是学习Internet如何运行,TCP/IP,DNS,HTTP,NAT,VPNs,8

汇编笔记 RETF

assume cs:code stack segment db 16 dup(0) stack ends code segment start: mov ax,stack;将定义字形数据送入AX mov ss,ax;送入桟空间 mov sp,16;定义桟长度 mov ax,1000h ;将1000H送入AX中 push ax;将AX送入桟中,保护数据 mov ax,0;将AX设置为0 push ax;然后再继续送入桟中,保护数据 retf ;转移指令,依次POP 桟中数据. POP IP, PO