E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
汇编语言学习笔记
32位
汇编语言学习笔记
(12)--分析switch语句的汇编代码
switch语句可以根据整数索引值进行多重分支选择,代码的可读性好,switch语句的汇编实现是通过跳转表来完成的,这样执行效率也很高。intswitch_eg(intx){intresult=x;switch(x){case100:result*=13;break;case102:result+=10;/*Fallthrough*/case103:result+=11;break;case1
swordmanwk
·
2020-07-15 15:05
Linux
汇编语言学习笔记
一:CS和IP寄存器
1、CS是代码段寄存器,IP是指令指针寄存器(相当于偏移地址)。修改CS、IP的指令不同于修改通用的寄存器值的指令,修改通用寄存器的值可以用mov指令(mavax,123),mov指令被称为传送指令。修改CS、IP的指令是jmp指令。jmp指令被称为转移指令。(1)同时修改代码段寄存器和指令指针寄存器,形如jmp段地址:偏移地址。jmp2AE3:3,执行后:CS=2AE3H,IP=0003H,CP
weixin_37924880
·
2020-07-12 10:49
汇编语言
32位
汇编语言学习笔记
(33)--aaa指令
aaa(ASCIIadjustafteraddition)指令,是BCD指令集中的一个指令,用于在两个未打包的BCD值相加后,调整al和ah寄存器的内容。BCD(Binary-codeddecimal)数是指2进制编码的10进制数,占据一个字节的低4位,只有0-9是有效值。AAA指令做两件事情:如果al的低4位是在0到9之间,保留低4位,清除高4位,如果al的低4位在10到15之间,则通过加6
swordmanwk
·
2020-07-12 00:49
Linux
8086CPU
汇编语言学习笔记
一、汇编语言环境安装与配置1.这里主要是在8086CPU的环境下学习的汇编语言,所以需要模拟这样的环境。**2.下载dosbox和masm,dosbox是一个dos模拟程序,我们现在用的操作系统和CPU大多数64位的,8086CPU和16位操作系统已经成为古董了,那么dosbox可以模拟这样的环境。masm是汇编语言的编译和link的工具,且必须在dosbox环境下使用(如果有支持window32
niceliusir
·
2020-07-11 13:20
汇编语言
ARM
汇编语言学习笔记
(二)跑个灯程序以及.s文件分析
目录一、汇编语言怎么写二、写一个试试三、分析1、启动2、配置GPIO3、设置GPIO的电平4、死循环四、编译1、安装linux虚拟机和arm-gcc-linux工具链。2、编写makefile3、make编译:五、成功一、汇编语言怎么写我们都知道,c语言可以写成c语言然后编译。那么汇编语言了?汇编语言用汇编语言写,然后写出来为.s文件。所以我们只需要任意一款可以编写.s文件的编辑器就可以啦,例如:
补不补布
·
2020-07-09 18:11
ARM汇编
ARM
汇编语言学习笔记
之寻址方式
所谓的寻址方式就是根据指令中的操作数的信息来寻找操作数实际物理地址的方式。根据指令中给出操作数的不同格式,ARM指令支持如下几种常见的寻址方式:1.立即数寻址:立即数寻址也叫作立即寻址,操作数本身就在指令中直接给出,取出这个指令也就获取到了操作数。该操作数也被成为立即数。比如:MOVR0,#15指令分析:将立即数15传入R0寄存器中。立即数用前缀"#"表示,不同的进制也有不同的表示方式默认是十进制
iehshx
·
2020-07-09 00:32
32位
汇编语言学习笔记
(11)--条件传送指令
条件传送指令如下:cmoveS,D//等于0时传送cmovzS,D//同cmovecmovneS,D//不等于0时传送cmovnzS,D//同cmovnecmovsS,D//负数时传送cmovnsS,D//非负数时传送cmovgS,D//有符号大于时传送cmovnleS,D//同cmovgcmovgeS,D//有符号大于等于时传送cmovnlS,D//同cmovgecmovlS,D//有符号小
swordmanwk
·
2020-07-05 13:07
Linux
汇编语言学习笔记
(十) 汇编程序
一、使用汇编语言编写一个完整的程序,步骤大致入下:(1)编写源代码,文件拓展名为.asm(2)编译、连接(可使用微软的MSAM编译器)(3)调试、运行Snip20180209_2.png注意:汇编语言文件拓展名时.asm二、汇编语言的组成assumecs:code//说明code范围内的是cs代码段的代码,这行只对程序员有意义,对于计算机可以不用写codesegment//汇编段开始movax,1
Rui哥
·
2020-07-05 09:25
arm
汇编语言学习笔记
一
1、arm伪指令在汇编时,会被合适的机器指令代替,实现真正的机器指令操作!2、DCB、DCW、DCD、DCQ,这4条伪指令都是用于分配一段内存单元,并对该内存单元初始化。唯一的区别是它们分配内存单元的大小不同DCB分配一段字节的内存单元,其后的每个操作数都占有一个字节,操作数可以为-128~255的数值或字符串DCW分配一段半字的内存单元,其后的每个操作数都占有两个字节,操作数是16位二进制数,取
zqx7876
·
2020-06-30 19:17
ARM汇编语言
汇编语言学习笔记
(三)段寄存器
一、CPU的典型构成CPU中有很多部件,但一般最主要的有:寄存器运算器控制器,如下图是CPU的主要结构:CPU的典型构成.png(1)寄存器:存东西的,比如我们做加法计算20+30,那么数据20和30先存在寄存器中,在运算器中计算后再存储到寄存器中.CPU中的寄存器,运算器等部件通过CPU中的控制器(总线)与外面的内存等其他部件相连.对于程序员来说,CPU中最主要的部件是寄存器,可以通过改变寄存器
Rui哥
·
2020-06-27 09:18
ARM
汇编语言学习笔记
(一)---ARM汇编的程序结构
0x00用到的书籍《Android软件安全与逆向分析》第六章0x01原生程序的生成过程笔者是在Linux环境下测试的,详细过程见书中说明需要编译的C语言代码#includeintmain(intargc,char*argv[]){printf("HelloARM!\n");return0;}预处理,生成hello.i文件gcc-Ehello.c-ohello.i编译gcc-Shello.i-ohe
请叫我小渣渣
·
2020-06-27 07:01
安卓逆向基础
汇编语言学习笔记
- 第四章
第四章第4章第一个程序4.1一个源程序从写出到执行的过程4.2源程序1.伪指令2.源程序中的“程序”3.标号4.程序的结构5.程序返回6.语法错误和逻辑错误4.3编辑源程序4.4编译4.5连接4.6以简化的方式进行编译和连接4.71.exe的执行4.8谁将可执行文件中的程序转载进入内存并使它运行?4.9程序执行过程中的跟踪第4章第一个程序4.1一个源程序从写出到执行的过程编写汇编程序使用文本编辑器
秦艽
·
2020-06-25 17:59
汇编
ARM
汇编语言学习笔记
(四)汇编语言中,如何调用C文件
目录一、目的二、堆栈设置1、为什么要设置栈2、怎么设置栈寄存器规则3、堆栈设置过程:①我们在c文件和s文件中的操作:②反汇编文件中机器的操作:三、.s文件中调用c函数:b和bl的区别:一、目的有时候会想一下,为什么我们要应用这些高级语言了?因为,方便啊。汇编语言对于机器来说固然是效率很高的,但是我们编写起来其实并没有那么方便,因为他的思路还是更近机器,所以在汇编语言的编写当中,C语言也可以被使用进
补不补布
·
2020-06-23 20:25
ARM汇编
ARM
汇编语言学习笔记
(一)介绍和资料
目录目的一、汇编语言是什么二、ARM汇编三、为什么要学习ARM汇编四、arm汇编资料目的在看了某位大佬的文章之后也想写一点自己在学习汇编的时候的学习笔记。新手入门,主要基于韦东山老师的新一期代码来实现操作,掌握汇编的基础操作。以一个菜鸟的角度来看待汇编代码问题,希望可以了解代码的具体运作过程。把问题拿出来,分析总结。希望方便后来的自己和后来学习的伙伴,不要做doublework。一、汇编语言是什么
补不补布
·
2020-06-23 20:54
ARM汇编
汇编语言学习笔记
——5
汇编语言学习[2018-05-14],第5天汇编语言的条件移动数据指令CMOV指令指令格式cmovxsource,destinationcmov指令基于EFLAGS寄存器做条件判断,用于条件判断的位如下:EFLAGS寄存器的位数据类型指示数据类型描述CFCarryflagAmathematicalexpressionhascreatedacarryorborrowOFOverflowflagAni
morganyj
·
2020-06-21 21:29
汇编语言
53.王爽
汇编语言学习笔记
jmp2AE3:3;CS=2AE3H,IP=0003Hjmpax;只能用某一合法寄存器的值来修改IP的值地址寄存器不能用立即数mov,而是得通过合法的寄存器来mov;将(1000:0)中的数据读到al中movbx,1000Hmovds,bxmoval,[0];0是ds偏移量为0处的数据地址注意操作ax用mov时,地址的进入低八位,地址加一进入高八位8086的入栈和出栈都是以字为单位push和pop
waiting不是违停
·
2020-04-12 14:01
汇编语言 学习笔记(三)
汇编语言学习笔记
四、汇编语言程序格式语句基本格式汇编语言程序中的语句由4项组成,格式如下:[name]operationoperand[;comment]名字(name)项是一个符号。
卡尔是正太
·
2020-03-27 03:09
汇编语言学习笔记
(四)CS 代码段寄存器
一、CS和IPCS为代码段寄存器(codesegment),IP为指令指针寄存器,他们指示了CPU当前要读取指令的地址.任意时刻,8086CPU都会将CS:IP指向的指令作为下一条需要取出执行的指令.CPU指令的执行过程.pngCPU是不会停的,CS:IP中的值也不会空的,继续执行注意:IP只为CS服务,其他的段寄存器中的偏移地址不由IP提供.通过上面的流程图我们可以看出8086指令的执行过程简要
Rui哥
·
2020-02-15 11:16
王爽
汇编语言学习笔记
(详细)
王爽汇编语言第三版是一款高清完整版的专业编程图书,该书结构设计合理,内容全面涵盖知识点丰富,适合自学者使用,有需要者快来一、基础知识1、指令机器指令:CPU能直接识别并执行的二进制编码汇编指令:汇编指令是机器指令的助记符,同机器指令一一对应。指令:指令通常由操作码和地址码(操作数)两部分组成指令集:每种CPU都有自己的汇编指令集。汇编语言由3类指令组成。汇编指令伪指令:没有对应的机器码,由编译器执
洋葱汪
·
2020-01-18 12:45
汇编语言 学习笔记 (二)
汇编语言学习笔记
三、8086基本指令数据传送指令通用数据传送指令1.MOV传送指令MOVdst,src;(dst)←(src);格式:MOVreg/mem/seg,reg/mem/seg/imma.对标志位无影响
卡尔是正太
·
2020-01-04 03:35
汇编语言 学习笔记(一)
汇编语言学习笔记
一、概论8086,8088构架1.寄存器8个通用寄存器AX[AH,AL]-累加器BX[BH,BL]-基址寄存器CX[CH,CL]-计数器DX[DH,DL]-数据寄存器SP-堆栈指针BP-
卡尔是正太
·
2019-11-28 03:58
小甲鱼
汇编语言学习笔记
——day03
手动编译并执行第一个汇编程序过程:1、用notepad++写一个简单的汇编程序(文件命名为:1.asm):assumecs:abcabcsegmentmovax,2addax,axaddax,axmovax,4c00Hint21Habcendsend2、在非系统盘以外的任意一个盘新建目录(如:test),将1.asm放入该文件夹下,下载masm5.0压缩包,将里面MASM.EXE和LINK.EXE
slma
·
2018-10-28 16:00
小甲鱼
汇编语言学习笔记
——day02
1、8086CPU不支持将数据直接送入段寄存器,需要按照下面方式:数据——》通用寄存器——》段寄存器。2、mov指令的几种形式:mov寄存器,数据mov寄存器,寄存器mov寄存器,内存单元movax,[0]将段地址为DS,偏移地址为0的数据存到ax寄存器里。mov内存单元,寄存器mov[0],ax将ax寄存器里的数据存储到段地址为DS,偏移地址为0的内存地址。mov段寄存器,寄存器mov寄存器,段
slma
·
2018-10-28 11:00
小甲鱼
汇编语言学习笔记
——day01
1、计算机CPU由如下三部分组成(如下图):运算器、控制器、寄存器。2、寄存器:简单说,就是用来存储数据的器件,类似内存,不过这个是CPU专用,跟内存不一样。8086CPU里,寄存器总共有14个,且都是16位。即AX,BX,CX,DX,SP,BP,SI,DI,IP,FLAG,CS,DS,SS,ES共14个。这14个寄存器按照一定方式又分为了通用寄存器,控制寄存器和段寄存器。通用寄存器:AX,BX,
slma
·
2018-10-22 22:00
x86
汇编语言学习笔记
2
一个简单的汇编语言程序:.datasumDWORD0.codemainPROCmoveax,5addeax,6movsum,eaxINVOKEExitProcess,0mainENDP加法指令:add减法指令:sub加一指令:inc减一指令:dec取补指令:neg(用0去减去操作数)标志寄存器及其使用(简单版):0:CF最高位产生进位或者借位置1否则02:PF最低字节中含有1的位数是奇数还是偶数,
delort
·
2018-02-11 17:40
小甲鱼零基础
汇编语言学习笔记
第六章之包含多个段的程序
在前面的几个章节中,我们的程序都是只有一个代码段,本章我们开始学习如何编写包含多个段的程序。1、在代码段中使用数据首先考虑这样一个问题,计算以下8个数据的和,结果存放在ax寄存器中:0123H,0456H,0789H,0abcH,0defH,0fedH,0cbaH,0987H在前面的课程中,我们都是累加某些内存单元中的数据,并不关心数据本身,可现在我们要累加就是已经给定了数值的数据。代码如下:1a
GetMyCode
·
2017-08-02 23:00
小甲鱼零基础
汇编语言学习笔记
第五章之[BX]和loop指令
这一章主要介绍什么是[BX]以及loop(循环)指令怎么使用,loop和[BX]又怎么样相结合,段前缀又是什么鬼,以及如何使用段前缀。1、[BX]的概念[BX]和[0]类似,[0]表示内存单元的偏移地址是0。要完整描述一个内存单元,需要两种信息:内存单元的地址,内存单元的长度(类型)。[BX]同样也表示一个内存单元,它的偏移地址在bx中,比如指令:movax,[bx]。这里我们以一个程序为例:1a
GetMyCode
·
2017-08-01 21:00
小甲鱼零基础
汇编语言学习笔记
第四章之第一个汇编程序
1、使用工具代码编写:NotePad++,代码编译器:MASM2、一个源程序从写出到执行的过程第一步,使用文本编辑器,用汇编语言编写汇编源程序,这一步产生一个存储源程序的文本文件。第二步,对源程序进行编译,连接。使用MASM.exe对源程序文件进行编译,产生目标文件,再使用LINK.exe对目标文件进行连接,生成可在操作系统中直接运行的可执行文件。可执行文件包括两个部分,程序(从源程序的汇编指令翻
GetMyCode
·
2017-07-29 01:00
小甲鱼零基础
汇编语言学习笔记
第三章之寄存器(内存访问)
这章涉及了一个重点概念——栈(还好有栈,让系统有了那么多的漏洞)。1、内存中字的存储1个字=2个字节,如从0开始存放20000(4E20H),20、4E分别表示1个字节,内存中字的存储如下图所示:这里,0号单元对应的是低地址单元,1号单元对应的是高地址单元。任何两个地址连续的内存单元(0、1、2......),N号单元和N+1号单元,可以看成两个内存单元。比如说上图中的0内存单元(字节单元),存放
GetMyCode
·
2017-07-28 11:00
小甲鱼零基础
汇编语言学习笔记
第二章之寄存器(CPU工作原理,CPU内部通讯)
这一章主要介绍了CPU中的重要器件——寄存器,整个系列通篇是以8086CPU作为探讨对象,其它更高级的CPU都是在此基础之上进行的升级。1、一个典型的CPU是由运算器、控制器、寄存器等器件组成,这些器件靠内部总线相连。区别:内部总线实现CPU内部各个器件之间的联系。外部总线实现CPU和主板上其它器件的联系。2、8086CPU有14个寄存器,有8个通用寄存器AX、BX、CX、DX、SI、DI、SP、
GetMyCode
·
2017-07-25 11:00
汇编语言学习笔记
-仅供个人
汇编语言汇编指令通过编译器可以将汇编指令翻译成机器指令伪指令告诉翻译软件,也就是编译器,这里怎么翻译,那里怎么翻译,由编译器执行,没有对应的机器指令符号体系+-*/没有对应的机器执行,由编译器执行基本知识1.什么是机器指令?0101010101010101的二进制数字2.二进制和机器语言(机器指令的集合)的关系?二进制可以描述这个机器指令3.机器指令和汇编指令的关系?通过编译器可以直接翻译一一对应
BohrIsLay
·
2017-07-11 18:07
汇编语言学习笔记
-仅供个人
汇编语言汇编指令通过编译器可以将汇编指令翻译成机器指令伪指令告诉翻译软件,也就是编译器,这里怎么翻译,那里怎么翻译,由编译器执行,没有对应的机器指令符号体系+-*/没有对应的机器执行,由编译器执行基本知识1.什么是机器指令?0101010101010101的二进制数字2.二进制和机器语言(机器指令的集合)的关系?二进制可以描述这个机器指令3.机器指令和汇编指令的关系?通过编译器可以直接翻译一一对应
BohrIsLay
·
2017-07-11 18:07
汇编语言学习笔记
(可持续补充)
寄存器是独立的,AX的高位AH与低位AL也是独立的CS:IP组合所指向的地址的内容就是指令SS:SP指向栈ret:popipretf:先popip,再popcsloop指令:cx=cx-1,然后再判断cx是否等于0jcxz:cx==0时,发生跳转call指令:ip=ip+所读字节数,puship,再jmp到标号处(记录ip,常用ret搭配使用)callfarptr指令:pushcs,puship(
bug_lover_liao
·
2017-01-25 22:09
汇编语言装X之路
[
汇编语言学习笔记
][第十五章 外中断]
第十五章外中断及时处理外设的输入,有以下两个问题外设的输入随时可能发生,CPU如何得知?CPU从何处得到外设的输入?这一章,以键盘输入为例,探讨这个问题。15.1接口芯片和端口外设的输入不直接送入内存和CPU,而是送入相关的接口芯片的端口中。CPU向外设输出,也是要先送入端口,由相关芯片到外设。CPU通过端口和外部设备进行联系15.2外中断信息外中断信息,来自于CPU外部,当CPU外部有需要处理的
zy691357966
·
2016-04-27 16:00
汇编语言
汇编语言学习笔记
(5)——[bx]和loop
1、[bx]代表将bx寄存器中的值作为偏移地址。2、loop与循环有关3、incbx的含义为bx中的内容+14、loop指令的格式为:loop标号CPU运行loop指令的时候。要进行两步操作:(1).(cx)=(cx)-1(2).推断cx中的值,不为零则转至标号处运行程序,假设为零则向下运行。5、通常,在用loop指令实现循环时,cx中存放循环次数。6、loop的程序框架:movcx,循环次数 s
mengfanrong
·
2016-04-23 21:00
[
汇编语言学习笔记
][第七章更灵活的定位内存的方法]
打破了我对bx的幻想第七章更灵活的定位内存的方法7.1and和or指令andmoval,01100011B andal,00111011B ormoval,01100011B oral,00111011B 7.2关于ASCII7.3以字符形式给出数据在汇编中用’…’的方式致命数据是以字符形式给出的。datasegment db'unIX' db'foRK' dataends db的意思是defin
zy691357966
·
2016-04-20 18:00
unix
汇编
数据
内存
汇编语言
[
汇编语言学习笔记
][第四章第一个程序的编写]
第四章第一个程序的编写程序返回规定这两段代码表示程序的返回,至于为什么我也不知道movax,4c00H int21H 程序的执行找到一段起始地址为SA:0000(即起始地址的偏移地址为0)的容量足够空闲内存去在这段内存去的前256个字节中,创建一个称为程序段前缀(PSP)的数据区,DOS要利用PSP来和被加载程序进行通信在这段内存的256字节处开始(在PSP的后面),将程序载入,程序的地址被设置为
zy691357966
·
2016-04-19 09:00
[
汇编语言学习笔记
][第三章寄存器(内存访问)]
第三章寄存器(内存访问)3.1内存中字的存储字单元:即存放一个字型数据(16位)的内存单元,由两个连续的内存单元组成。在以后我们称起始地址为N的字单元简称为N地址字单元3.2DS和[address]DS寄存器,通过用来存放要访问数据的段地址。只能通过movds寄存器修改ds的值[address]代表偏移地址,光有偏移地址不能访问内存,段地址通过ds得到例子:movbx,1000H movds,bx
zy691357966
·
2016-04-19 09:00
[
汇编语言学习笔记
][第二章寄存器]
第二章寄存器8086有14个寄存器,分别为AX,BX,CX,DX,SI,DI,SP,BP,IP,CS,SS,DS,ES,PSW。2.1通用寄存器8086CPU的所有寄存器都是16位,可以存放两个字节。AX,BX,CX,DX这四个寄存器通常用来存放一般性数据,被称为通用寄存器为了兼容之前的8位通用寄存器,将这4个寄存器拆开为8个8位寄存器分别为H的含义High,高位,L的含义Low,低位AX=AH+
zy691357966
·
2016-04-18 20:00
[
汇编语言学习笔记
][第一章基础知识]
1基础知识1.7CPU对存储器的读写CPU想要进行数据的读写,必须和外部器件(标准说法是芯片)进行三类信息的交互存储单元的地址(地址信息)器件的选择,读或写的命令(控制信息)读或写的数据(数据信息)这三种信息又通过总线传输,从逻辑上分为三种,分别对应地址总线,控制总线,数据总线。1.8总线地址总线的宽度决定了CPU的寻址能力(地址范围)数据总线的宽度决定了CPU的传送能力(数据位数)控制总线的宽度
zy691357966
·
2016-04-18 17:00
汇编语言
汇编语言学习笔记
之通用寄存器
汇编语言学习笔记
之通用寄存器 从昨天开始,正式拉开了学习汇编语言的序幕,对于汇编语言的一些特点以及数据的表示及类型做了一番了解,由于这些东西每一种语言里都要介绍,而且一时半会也真弄不太明白它们的具体使用
ywbhnay
·
2016-03-29 15:00
汇编
寄存器
AT&T
汇编语言学习笔记
声明指令.ascii//文本字符串 .asciz//以空字符结尾的字符串 .byte//字节值 .double//双精度浮点值 .float//单精度浮点值 .single//单精度浮点数(和float相同) .short//16位整数 .int//32位整数 .long//32位整数,和int相同 .quad//64位(8字节)整数 .octa//128位(16字节)整数
promaster
·
2015-12-02 09:00
32位
汇编语言
AT-T
汇编语言学习笔记
1
今天我将开始学习汇编语言,学习汇编语言的目的呢,不是用汇编语言来写程序,而是在我们使用高级语言如C语言和C++或者c#等语言写代码时,更好的理解你自己所写出的一行行代码: 1.我们要了解汇编语言是直接在硬件之上工作的编程语言,首先了解硬件系统的结构,这个不必了解太深,完全可以浅尝辄止;
·
2015-11-08 14:24
学习笔记
汇编语言学习笔记
之通用寄存器
汇编语言学习笔记
之通用寄存器 从昨天开始,正式拉开了学习汇编语言的序幕,对于汇编语言的一些特点以及数据的表示及类型做了一番了解,由于这些东西每一种语言里都要介绍
·
2015-11-08 11:22
学习笔记
汇编语言学习笔记
3
1.cpu是通过地址总线来指定存储单元的,地址单元能传送多少个不同的信息,就表明cpu可以对多少个存储单元进行寻址 一个CPU有N根地址总线,可以说这个CPU的地址总线宽度为N,这样的CPU最多可以寻找2的N次方个内存单元3.数据总线:CPU与内存或其它器件之间数据传送石通过数据总线来进行,数据总线的宽度决定了CPU和外界的数据传送速度 4.控制总线:CPU对外部器件的控制,有
·
2015-11-07 12:33
学习笔记
汇编语言学习笔记
2
1.严格来说汇编语是由以下三部分组成: 1.汇编指令:助记符,即用英语字符替换机器码 2.伪指令:由编译器编译执行,即Mov等控制指令 3.其它符号:由编译器编译执行,计算机是不能识别"+","-"等符号,所以需要编译器编译成机器语言 2.汇编语言的核心是汇编指令,他决定汇编语言的特性
·
2015-11-07 12:32
学习笔记
汇编语言学习笔记
一
一 数据表示 1 十进制结尾用D或d 二进制结尾用B或b 十六进制结尾用H或h 八进制结尾用Q或q 2 字符的ASCII表示 标准的ASCII字符集分为4组,每组32个字符。 第一组 0~1FH 是一组不可打印字符,称为控制字符 第二组 各种标点符号、专用字符和数字 第三组 26个大写字母(41H~5AH)及6个专用字符 第四组 26个小写字母及(61H~7AH)5个专用
·
2015-10-31 09:17
学习笔记
汇编语言学习笔记
(8)——数据处理的基本问题
1、只有“bx、si、di、bp”四个寄存器可以用在[…]中来进行内存单元的寻址2、这四个寄存器可以单个出现也可以以[by+zi]形式出现,其中y=x或p,z=s或d,其他格式均为错误的。3、当使用bp时,如果没有显性地给出段地址,则段地址默认在ss段寄存器中。4、汇编语言中用三个概念来表达数据的位置:立即数(idata):直接包含在机器指令中的【数据】(执行前在CPU的【指令缓冲器中】),在汇编
hjb2722404
·
2015-06-26 16:00
汇编语言学习笔记
(7)——更灵活地定位内存
1、and指令逻辑与指令,按位进行与运算,例如: moval,01100011B andal,00111011B计算后的al结果为:00100011B计算过程:01100011B 00111011B ---------------------------- 00100011B 可以看出,逻辑与运算两个二进制的思路是,设1为真,0为假,则按位对应两个数,同一位置上下两个值同为真则结果为真(1),同为
hjb2722404
·
2015-06-25 10:00
汇编语言学习笔记
(6)——包含多个段的程序
1、程序取得所需空间的方法有两种,一种是在加载程序的时候为程序分配,再就是程序在执行的过程中向系统申请。2、我们若要一个程序在被加载的时候取得所需的空间,则必须要在源程序中做出说明。我们通过在源程序中定义段来进行内存空间的获取3、程序运行的时候,CS寄存器中存放代码段的段地址。4、在源程序中使用end标号来指明程序的入口(要执行的第一条指令),所以程序架构就可以如下:assumecs:code c
hjb2722404
·
2015-06-15 11:00
上一页
1
2
3
4
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他