汇编语言课堂总结1——第一章 基础知识

什么是汇编语言:

汇编语言是比机器语言高级,但依旧偏向于硬件的一种编程语言。比起C、C++、Java这些偏向于人的语言,在编写汇编程序时需要考虑更全面,要写的代码也要更多,但汇编程序的运行速度却是这些语言所不能比的。不同的CPU也有不同的汇编语言。

汇编语言的组成 and 指令vs.数据:

汇编语言由3类指令组成:汇编指令、伪指令和其他符号(注释、变量、标号、段等)。其中,汇编指令有对应的机器码,而伪指令和其他符号则没有对应的机器码。

在内存中,不管是指令还是数据,都是以二进制的形式存储,两者的区别只在应用上。那么,区别指令和数据的方式是什么呢?也许程序员会规定将二进制的第一位作为区别的标志位,如果为1,则是指令,反之则为数据,但是,随着计算机的不断发展,这样的方式势必会出现错误,所以就要找到一个通用的方式。至于CPU具体是如何区分指令和数据的将会在第二章中详细说明。

CPU的组成 and CPU通过总线对存储器数据的读写过程:

CPU主要由五大部分组成,分别是控制器、运算器、存储器、输入设备和输出设备。而在CPU对存储器进行读写的时候还要通过地址总线、控制总线和数据总线(不过这三种总线也依旧只是在传输不同的信息时有所不同,在外观看来并无区别,也没有谁比谁更重要之分)。

读数据:先由CPU通过地址总线将要读取的地址信息传输到内存中找到这个地址单元,再由CPU通过控制总线发出“读”的信息,最后内存通过数据总线将所寻找到的数据信息传输到CPU中。

写数据:先由CPU通过地址总线将要写入的地址信息传输到内存中找到这个地址单元,再由CPU通过控制总线发出“写”的信息,最后CPU通过数据总线将要写入的数据信息传输到内存中。

内存地址空间:

内存地址空间又称寻址空间,与CPU地址总线宽度有关,表示CPU所能寻找到的最大地址空间范围。若设一个CPU的地址总线宽度为n,那么可以寻址2n个内存单元,这2n个可寻到的内存单元就构成这个CPU的内存地址空间。简单来讲,所有的物理存储器被看作一个由若干存储单元组成的逻辑存储器,而内存地址空间是计算机的各个物理存储器在这个逻辑存储器中所占的地址空间之和。

  ps:计算机中的物理存储器有随机存储器、装有BIOS的ROM和接口卡上的RAM。主随机存储器一般由装在主板上的RAM和扩展插槽上的RAM组成;BIOS全称Basic Input/Output System,即基本输入输出系统,主板、显卡、网卡上一般都有装有BIOS的ROM;接口卡上的RAM最常见的就是显存。

由于汇编语言是基于硬件的语言,所以了解系统中的内存地址分配情况是很重要的,但不同的计算机系统的内存地址空间分配情况是不同的,并且内存地址空间的容量与平时所讲的内存条的容量也不是一回事。

原文地址:https://www.cnblogs.com/lingana/p/9657299.html

时间: 2024-10-10 07:42:05

汇编语言课堂总结1——第一章 基础知识的相关文章

wpf(第一章 基础知识)

wpf第一章基础知识:通过vs2015创建wpf程序会在引用里面多出3个核心程序集PresentationCore.PresentationFramework.WindowsBase.并且会在解决方案中生成如下的结构: 1.程序起始相关的资源:2.与整个wpf相关的后台代码:3.窗体界面:4.窗体界面的后台代码. 在app.xaml中 1.Application的后台类:2.启动窗体:3.系统资源区域 除此之外可以在MainWindow.xaml中自定义窗体设置属性,拖拉控件在里面.

【读书笔记】《Python基础教程》第一章 基础知识

第一章 基础知识 实现两个数整除:使用命令开关 -Qnew (?): 使用双斜线. from future import division 执行向计算器那样的普通除法. 幂(乘方)运算符: 2 ** 3 (8),用函数代替 pow(2,3),内建函数 长整数型:在数字结尾加L.eg:10000000000000L 获取用户输入 input("提示信息 :") eg: x = input("x: ") .输入的是合法的python表达式 raw_input("

Kubernetes 第一章 基础知识

Kubernetes 第一章 基础知识 Kubernetes是一个开源容器编排引擎,用于自动化容器化应用程序的部署,扩展和管理.开源项目由Cloud Native Computing Foundation(CNCF)托管. Kubernetes是一个可移植,可扩展的开源平台,用于管理容器化工作负载和服务,有助于声明性配置和自动化.它拥有庞大,快速发展的生态系统.Kubernetes服务,具有广泛的工具和支持可用. 发展历程 传统部署时代: 早期,组织在物理服务器上运行应用程序.无法为物理服务器中

汇编语言--第一章--基础知识

基础知识 D(decimal)10 B(binary)2 H(hexadecimal)16 O(octal)8 二进制数和十进制数的转换 十进制转换为二进制: 1.降幂法 2.除法:多用除法 把要转换的十进制数的整数部分不断除以2,并记下余数,知道商为0为止.从下向上写. 对于被转换的十进制数的小数部分则应不断乘以2,并记下其整数部分,直到结果的小数部分为0为止.从上向下写. 为了便于对二进制数的描述,应该选择一种易于与二进制数相互转换的数制. 计算机中常用的字符是采用8位二进制数组成的一个字节

汇编语言 第一章基础知识

计算机语言的进化演变起源于机器语言 机器语言 (1) 是机器指令的集合.机器指令是0和1构成的二进制信息. (2) 直接面向机器,与机器的硬件操作一一对应.计算机可以直接识别.执行,使用机器语言可以充分发挥计算机的硬件功能. (3) 缺点: 依赖机器硬件,机器指令很难记忆,直接使用机器语言编制程序极易出错,并且难以调试. 由于机器语言非常难于辨别和记忆,以至于给整个产业的发展带来了障碍,于是产生了汇编语言. 汇编语言 1) 汇编语言的主体是汇编指令. (2) 汇编指令和机器指令的差别在于指令的表

汇编语言第一章基础知识

1.  汇编语言的高效性在于汇编语言最终被转换为机器语言,能够最直接简洁的控制计算机的各种软硬件. 2.数据与指令在机器语言(二进制)没有本质区别,但是数据与指令是分开放的,但是访问时期是不同的,在取指访问周期的就是指令,读取数据周期读的是数据. 3.书p5  cpu从3号单元中读取数据过程 (1)CPU通过地址线将地址信息3发出. (2)CPU通过控制总线发出内存读命令,选中存储器芯片,并通知它,将要从中读取数据. (3)存储器将3号单元中的数据8通过数据线送入CPU. 书p6 写入过程 (1

汇编语言第一章 基础知识 总结

机器语言是机器指令的集合,机器指令就是一台机器可以正确执行的指令. PC机中有一个芯片,可以执行机器指令,进行运算,这个芯片就是CPU. 由于微处理器的硬件设计和内部结构不同,所以每一种微处理器,都有自己的机器语言. 由于机器语言难以辨别和记忆,于是汇编语言产生了.汇编语言的主体是汇编指令,汇编指令是机器指令便于记忆的书写格式. 汇编语言由三类指令组成: (1)汇编指令(2)伪指令(3)其他符号 汇编语言的核心是汇编指令,它决定了汇编语言的特性. 内存是为CPU储存指令和数据的地方,地位仅次于C

汇编语言(王爽) 第1章基础知识

1.1 机器语言 机器语言就是机器指令的集合.机器指令是啥呢?就是一列二进制的数据,计算机把它转成高低电平,使计算机的其他器件驱动并运算.(计算机如何使用2进制语言?) 早期程序都是用机器语言写的,但是有个问题就是太麻烦,数据信息太长,写错一个0或1就会来BUG了. 这种机器语言根本不是人写的,注定会被淘汰. 1.2 汇编语言 这个时候,汇编语言就挺身而出. 汇编语言就是机器语言的便于记忆的格式把 一个指令1000100010001000 表示把寄存器A1的内容弄到寄存器A2上.如下 操作介绍:

汇编第一章--基础知识梳理与总结

闲谈汇编之初,先说说计算机的硬件组成:运算器,控制器,存储器,输入设备,输出设备. 下图就是计算机的硬件组成框架: 在早期,机器语言是直接对硬件进行操作,但是机器语言是0和1的字符串,这就是的早期程序员的工作十分繁杂,如果0或者1有一位出错,那么整个程序就会崩掉了,那么如何解决这个问题呢? 汇编语言就应运而生了. 汇编语言的主体是汇编指令,汇编指令和机器指令的差别在于指令的表示方法上,汇编指令是机器指令便于记忆的书写格式. 程序员运用汇编语言书写指令提升了效率,可是计算机只能读懂机器指令,那么怎