汇编入门之路-基础知识

Chapter 1: 基础知识


1.1 机器语言

机器语言是机器指令的集合,展开来讲就是一台机器可以正确执行的命令。电子计算机的机器指令是一列二进制数字。计算机将之转换为一系列高低电平,以使计算机的电子器件收到驱动,进行运算。


1.2 汇编语言的产生

机器语言由二进制表述,难以辨别与记忆,所以产生了汇编语言,它与机器语言的差别在于指令的表示方法上。

例如:机器指令 1000100111011000 表示将寄存器(以后会说到)BX的内容送入AX中。汇编指令则写为 mov ax,bx 。这样的写法接近自然语言,便于阅读记忆。

寄存器简单讲是CPU中可存储数据的期间,一个CPU有多个寄存器,AX、BX是其中的代号。详细内容后面会讲到

程序员用汇编语言写指令,通过编译器翻译为机器指令,也就是二进制序列送到CPU处执行。


1.3 汇编语言的组成

  1. 汇编指令:机器码的助记符,与机器吗一一对应 (核心)
  2. 伪指令:无对应机器码,由编译器执行,计算机不执行
  3. 其它符号:如+、-、*、/等,由编译器识别,无对应机器码

1.4 存储器

指令与数据储存在存储器中。


1.5 指令与数据

指令和数据是应用上的概念。在内存或硬盘是=上,指令和数据无任何区别,都是二进制序列。CPU工作时把有的信息看作指令,有的看作数据。

例如二进制信息 1000100111011000 单从将其转换为十六进制的大小上来看,为89D8H,看作数据。 理解为内容的话,即为mov ax,bx,看作指令。


1.6 存储单元

存储器会被划分为若干存储单元,单元从0开始编号。假设一个存储器由128个存储单元,则编号是从0~127.

对于计算机,最小的信息单位是bit(音译比特,俗称“位”),也就是一个二进制位。8个bits组成一个Byte(字节)。存储器的单元一般大小为1Byte,即8个bits(二进制位)。一个存储器有128个存储单元,那么他能存储128个Bytes。

存储器的容量是以字节为最小单位来计算的。对于有128个存储单元的存储器,我们说其容量为128字节。

单位换算:(以后将Byte简称B,注意B不是bit)

1KB = 1024B 1MB = 1024KB 1GB = 1024MB 1TB = 1024GB



持续更新中。。。

原文地址:https://www.cnblogs.com/1Kasshole/p/9478151.html

时间: 2024-12-14 15:57:13

汇编入门之路-基础知识的相关文章

Python 入门之Python基础知识

Python 入门之Python基础知识 1.变量 (1)变量就是把程序运行的中间结果临时存在内存中,以便后续代码使用 (2)变量的作用: 昵称,就是代指内存中某个地址中的内容 a = 123 变量名 赋值 值 (3)变量命名的规则: (1). 变量名由字母.数字.下划线组成 (2). 变量名不能以数字开头 (3). 变量名要具有可描述性 (4). 变量名要区分大小写 (5). 变量名禁止使用Python关键字 (6). 变量名不能使用中文和拼音(不是不能使用,太low) (7). 变量名推荐写

汇编学习笔记---(2)基础知识

今天,接着上次,继续学习汇编语言,主要对内存地址空间.主板.接卡口.存储芯片等进行了解. 什么是内存地址空间? 要搞清楚这个问题,我们首先要知道主板和接口卡. 每个PC都会有一个主板,主板上附有核心器件,包括CPU.存储器.外围芯片组.扩展插槽等,它们通过地址总线+数据总线+控制总线相连. 接口卡啥作用,说白了就是通过总线接收CPU发送的命令,对显示器.音响等外部设备进行控制. 一台PC中主要有两种存储器:随机存储器RAM和只读存储器ROM. RAM中用于存放CPU使用的绝大部分程序和数据,PC

SQL server从入门精通---- 数据基础知识

数据库入门: 数据库的发展:人工管理阶段-----文件管理阶段-----数据库系统阶段 数据系统的组成: 1.数据库(数据)db 2.数据管理系统(软件)dbms 3.数据库管理人员  dba 4.硬件平台   5.软件平台        数据库的3级模式 模式   外模式   内模式   简单点说 模式就是表 外模式就是视图 内模式是物理结构和存储方式一般你是用不到的   3级模式之间的2级映射 模式/外模式映射(逻辑独立性) 外模式/内模式映射(物理独立性) 数据模型 层次模型   网状模型

汇编学习笔记01(基础知识)

自己在学习C语言的时候, 有的时候碰到自己理解不了的技术点的话, 就无从下手了, 但是这些技术点如果用汇编来理解的话, 可能非常好理解, 也更容易让大家理解, 所以感觉汇编是很强大的, 对我们学习一些其它的高级语言也很有用, 所以希望自己可以对伟大的汇编语言有一定的了解和认知, 对计算机的思维方式也有更进一步的认识, 对自己的编码习惯有一个好的影响或者改变, 同时对自己的能力有些提高吧. 1. 我们首先要知道什么是机器语言? 也就是机器指令的集合, 机器指令也就是一台机器可以正确执行的命令. 机

软件测试入门随笔——软件测试基础知识(四)

about 测试流程 一般公司测试流程 评审需求 分解需求 制定测试计划 设计测试用例 执行测试 提交bug报告 回归测试.验证bug 书写测试报告 经验总结 测试过程模型 瀑布过程模型 以文档驱动,自由度低.实际开发过程中,各部分之间都有某种程度的重叠,造成这种重叠的原因是,任何一个阶段都不可能在下一个阶段开始之前结束. 快速原型过程模型 先做出一个可运行的.功能简单的原型系统,交由客户试用看是否满足客户期望,并根据客户反馈进行修改增补. 优点:关注用户需求,降低由于需求不明确导致项目出错的风

ios网络编程(入门级别)-- 基础知识

在学习ios的过程中,停留在UI控件很长时间,现在正在逐步的接触当中!!!!!!在这个过程中,小编学到了一些关于网络编程知识,并且有感而发,在此分享一下: 关于网络请求的重要性我想不用多说了吧!!!对于移动客户端来说,网络的重要性不言而喻,常见的网络请求有GET, POST,今天来看一下两种网络请求的实现方式. 第一部分   小编的理解 一.两种网络请求--POST请求与GET请求的异同(这里小编只讨论的是异步链接) GET的语义是获取指定URL上的资源,将数据按照Variable = Valu

菜鸟的Python之路--基础知识

刚刚开始自学Python,整理一下自己的学习感悟 刚刚开始学习Python,代码之路才刚刚开始第一个差距就感受到了.Python的标点符号与其他语言的差别,它每句后面都没有":". 变量的命名规则    1. 要具有描述性    2. 变量名只能_,数字,字母组成,不可以是空格或特殊字符(#?<.,¥$*!~)    3. 不能以中文为变量名    4. 不能以数字开头    5. 保留字符是不能被使用 常量 :不变的量 pie = 3.141592653....     在py

程序设计入门-C语言基础知识-翁恺-期中测试

一.试题 程序设计入门-C 语言期中测评1 在代码:while ( !e )中,!e 等价于:A.e ==0 B. e != 1 C. e!=0 D. e == 12. 以下代码片段的输出是:int j=4;for ( int i=j; i<=2*j; i++ ) {switch ( i/j ) {case 0:case 1: printf("*"); break;case 2: printf("#");}}A.****## B. ***# C. *# D.

软件测试入门随笔——软件测试基础知识(六)

初步接触性能测试啦!!学习书籍<loadrunner 性能测试巧匠训练营> 针对不同系统,性能测试有不同的关注点 C/S架构的产品更关注系统资源使用情况.数据库性能以及运行的配置要求等等.如:内存.用户连接数.数据库死锁.数据库cache命中率.运行的最低配置等等.   B/S架构的产品关注web服务器的相关指标.如:每秒点击率.吞吐量.尝试连接数.事务成功率等等.B/S架构的较为复杂. 性能测试的目的(know how fast & how much) 1.评估当前系统 2.寻找瓶颈