【汇编学习笔记】绪论 |
您所在的位置:网站首页 › cpu总线宽度通俗易懂 › 【汇编学习笔记】绪论 |
目录 1 学习汇编语言的理由 1.1 这门课学什么? 2 由机器语言到汇编语言 2.1 机器语言与机器指令 2.2 汇编语言和汇编指令 2.3 用汇编语言编写程序的工作过程 3 计算机的组成 3.1 指令和数据的表示 3.2 计算机中的存储单元 3.3 计算机中的总线 4 内存的读写与地址空间 4.1 CPU对存储器的读写 4.2 内存地址空间 5 汇编语言实践环境的搭建 1 学习汇编语言的理由 汇编语言仍在发挥不可替代的作用 效率 运行效率∶开发软件的核心部件,快速执行和实时响应。开发效率∶做合适的事,开发效率无敌底层∶计算机及外围设备的驱动程序 操作系统的内核嵌入式系统:家用电器、仪器仪表、物联网....汇编语言在学习计算机中起到的独特作用——直击计算机系统的核心 便于加深对计算机原理和操作系统等课程的理解。通过学习和使用汇编语言,能够感知、体会和理解机器的逻辑功能 向上为理解各种软件系统的原理,打下技术理论基础向下为掌握硬件系统的原理,打下实践应用基础。学会底层的程序调试和错误分析方法。 1.1 这门课学什么?汇编语言程序设计 定位:理解硬件结构、掌握指令集、理解程序的运行过程。 内容:8088、8086指令集与汇编语言程序设计。 本课只解决入门:降低入门难度、关注核心思维与方法。 进一步延伸:Inter80x86汇编、Linux汇编、ARM汇编 学习方法:贯穿实践的方法、学会观察机器的内部状态 2 由机器语言到汇编语言 2.1 机器语言与机器指令机器语言是机器指令的集合。机器指令是一台机器可以正确执行的命令。 机器指令由遗传二进制数表示,例01010000 计算机内 电平脉冲 早期程序员工作状态:将0、1数字编程的程序代码打在纸带或卡片上,1打孔,0不打孔,再将程序通过纸带机或卡片机输入计算机,进行运算。 例:计算s = 768 + 12288 - 1280的程序 机器码∶ 101100000000000000000011 000001010000000000110000 001011010000000000000101 如果打错了,找程序错哪儿了很麻烦。 2.2 汇编语言和汇编指令汇编语言的主体是汇编指令。 汇编指令和机器指令的差别在于指令的表示方法上 汇编指令是机器指令便于记忆的书写格式。 汇编指令是机器指令的助记符 机器指令:1000100111011000 操作:将寄存器BX的内容送到AX中 汇编指令:MOV AX BX 寄存器:CPU中可以存储数据的器件,一个CPU有多个寄存器。 主板上有: CPU总线内存(条) :拓展槽(接外部设备)存储器被划分为若干个存储单元,每个存储单元从0开始顺序编号; 例如:一个存储器有128个存储单元,编号从0~127 实际:内存空间很“大”,8086有20条数据线,寻址空间2^20,为1MB。 2^20=1048576,FFFFFH=1048575O 在计算机中专门有连接CPU和其他芯片的导线,常称为总线。 物理上:一根根导线的集合; 逻辑上划分为:地址总线、数据总线、控制总线 地址总线: CPU是通过地址总线来指定存储单元的。地址总线宽度,决定了可寻址的存储单元大小。N根地址总线(宽度为N ) ,对应寻址空间2N。数据总线: CPU与内存或其它器件之间的数据传送是通过数据总线来进行的。数据总线的宽度决定了CPU和外界的数据传送速度。例:向内存中写入数据89D8H时的数据传送控制总线: CPU通过控制总线对外部器件进行控制。控制总线是一些不同控制线的集合控制总线宽度决定了CPU对外部器件的控制能力。x86CPU性能一览 CPU 地址总线宽度 寻址能力 数据总线宽度 一次传送数据 读取1KB数据要读__次 8080 16 640KB 8 1B 1024 8088 20 1MB 8 1B 1024 8086 20 1MB 16 2B 512 80286 24 16MB 16 2B 512 80386 32 4GB 32 4B 256 4 内存的读写与地址空间 4.1 CPU对存储器的读写CPU要想进行数据的读写,必须和外部器件进行三类信息的交互: (地址信息):存储单元的地址。(到哪儿去操作数据)(控制信息):器件的选择,读或写命令(寄存器/内存储空间/端口?;读/写?)(数据信息):读或写的数据演示: 机器码:10100000000000110000000016进制:A00300汇编指令:MOV AL,[3]含义:从3号单元读取数据送入寄存器ALCPU通过地址线发出3给内存,内存找到3号单位的位置,然后CPU通过控制线发读的命令给内存,最后,内存通过数据线把3号单元的内容发给CPU。 4.2 内存地址空间 什么是内存地址空间 CPU地址总线宽度为N,寻址空间为2B8086CPU的地址总线宽度为20,那么可以寻址1MB个内存单元,其内存地址空间为1MB。从CPU角度看地址空间分配: RAM:主板上的RAM、扩展槽上的RAM(例显卡)ROM:系统BIOS、接口卡上的BIOS将各类存储器看做一个逻辑存储器——同一编址 所有的物理存储器被看做一个由若干存储单元组成的逻辑存储器。 每隔物理存储器在这个逻辑存储器中占有一个地址段,即一段地址空间。 CPU在这段地址空间中读写数据,实际上就是再相对应的物理存储器中读写数据。 以8086PC机为例,内存地址空间的分配方案: 实践方案——DOS环境 DOS操作系统——MS DOS方式——DOS虚拟机——DOS模拟器 具体见:6 汇编语言实践环境搭建_哔哩哔哩_bilibili 网课:通俗易懂的汇编语言(王爽老师的书) |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |