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
8086CPU汇编学习
汇编学习
笔记 第六章
6.1子程序的结构ENDP表示子程序的定义结束,并不等价于执行结束RET与C中的switch-break相似NEAR与FAR的定义一般还是有必要的调用时的栈变化段内调用SP:自减2,相当于上浮一个字,用于保存当前IPIP:转移到DST或有效地址段间调用SP:自减4,相当于上浮两个字,用于保存当前IP与CSIP/CS:转移到DST对应的偏移地址/段地址,或有效地址的低位/高位(即先压入CS再压入IP
Cao970824
·
2017-06-15 19:00
汇编
汇编学习
笔记 第五章
5.1顺序程序设计从键盘获取一个字节说明:存入AL代码MOVAH,01HINT21H输出一个字节说明:输出DL的对应ASCII值代码MOVDL,*MOVAH,02HINT21H输出字符串说明:输出偏移地址存入DX代码MOVDX,OFFSETLABLEMOVAH,09HINT21H5.2分支程序设计CMP的详细解释ZF标志位ZF=1:DST=SRCZF=0:DST!=SRCCF标志位(无符号数)CF
Cao970824
·
2017-06-14 13:46
汇编笔记
汇编学习
笔记 第五章
5.1顺序程序设计从键盘获取一个字节说明:存入AL代码MOVAH,01H INT21H输出一个字节说明:输出DL的对应ASCII值代码MOVDL,* MOVAH,02H INT21H输出字符串说明:输出偏移地址存入DX代码MOVDX,OFFSETLABLE MOVAH,09H INT21H5.2分支程序设计CMP的详细解释ZF标志位ZF=1:DST=SRCZF=0:DST!=SRCCF标志位(无符
Cao970824
·
2017-06-14 13:00
汇编
汇编学习
笔记 第四章
4.1数据常量通过EQU伪指令定义的符号名一般称为符号常量标识符(变量名)要求不能以数字开头不能仅使用特殊字符不能是保留字操作符和表达式$?DUP注:一定要注意$和EQU一起出现的情况4.3运算符和表达式算术运算符注意点参加运算的数和结果都是整数除法只保留商逻辑运算符注意点按位操作与逻辑运算指令不同,在编译时进行计算数值回送操作符SEG:段基址OFFSET:偏移地址TYPE:类型值LENGTH:取
Cao970824
·
2017-06-13 16:00
汇编
汇编学习
笔记 第三章
3.1指令格式汇编指令由操作码与操作数两部分构成标号中的冒号表示属性为NEAR对于段寄存器,CS不允许用户干预,其他必须通过通用寄存器间接传送。对于单操作数指令,操作数不能是立即数对于双操作数指令,目的操作数不能是立即数,且操作数不能均为内存操作数。3.2寻址方式立即数寻址与寄存器寻址直接寻址符号常量通常为立即数寻址,符号变量为直接寻址对于符号变量(X)来说,MOVAX,X等价于MOVAX,[X]
Cao970824
·
2017-06-11 20:52
汇编
汇编笔记
汇编学习
笔记 第三章
3.1指令格式汇编指令由操作码与操作数两部分构成标号中的冒号表示属性为NEAR对于段寄存器,CS不允许用户干预,其他必须通过通用寄存器间接传送。对于单操作数指令,操作数不能是立即数对于双操作数指令,目的操作数不能是立即数,且操作数不能均为内存操作数。3.2寻址方式立即数寻址与寄存器寻址直接寻址符号常量通常为立即数寻址,符号变量为直接寻址对于符号变量(X)来说,MOVAX,X等价于MOVAX,[X]
Cao970824
·
2017-06-11 20:00
汇编
汇编学习
笔记 第二章
2.180x86的基本结构硬件系统由中央处理器(CPU),存储器(Memory),输入输出设备(Input/Output)组成,由系统总线连接。中央处理器内部组成运算器、控制器、寄存器主要功能执行存放在内存中的指令;运算器用来执行算术运算,逻辑运算和数据传送等;控制器用来从内存中取出指令,分析指令操作码,完成操作数的存取和发出相应的控制命令等。总线结构共有三条总线:数据总线(DB),地址总线(AB
Cao970824
·
2017-06-10 17:16
汇编笔记
汇编学习
笔记 第二章
2.180x86的基本结构硬件系统由中央处理器(CPU),存储器(Memory),输入输出设备(Input/Output)组成,由系统总线连接。中央处理器内部组成运算器、控制器、寄存器主要功能执行存放在内存中的指令;运算器用来执行算术运算,逻辑运算和数据传送等;控制器用来从内存中取出指令,分析指令操作码,完成操作数的存取和发出相应的控制命令等。总线结构共有三条总线:数据总线(DB),地址总线(AB
Cao970824
·
2017-06-10 17:00
汇编学习
笔记 第一章
1.1汇编语言程序生成过程:CreatedwithRaphaël2.1.0汇编源程序(.asm)编译连接可执行程序(.exe)1.2数制十进制手算转其他进制,一般都先转化为2进制再转换(比较方便);B表示2进制,D表示十进制,O表示八进制,H表示十六进制(字母开头时加0);1.3数据组织组织方式位(Bit)表示信息的最小单位。字节(Byte)一个字节为8位。字(Word)一个字一般为两个字节,有时
Cao970824
·
2017-06-10 14:00
汇编
汇编笔记5
然而,对于
8086CPU
而言,它的外部控制总线有20根,要查找的地址范围为0~2^20-1(约1MB)。而该CPU内部寄存器为16位,生成的地址范围为0~2^16-1(约64KB)。
余生筑
·
2017-06-09 21:02
[汇编语言基础教程]第一章汇编语言基础知识
计算机程序设计语言目标程序就是为源程序经过编译可直接被计算机运行的机器码集合,在计算机文件上以.obj作为拓展名.汇编语言中描述指令功能的符号表示机器指令,被称为指令助记符.汇编程序的拓展名".asm"例1.2用
8086CPU
大方子
·
2017-05-23 17:37
8086
汇编学习
之标志位寄存器的应用
标志位寄存器其作用就是以其不同的标志位来支持更高级的指令,使得程序员的操作更为方便。关于标志位寄存器的知识点:区分CF标志位(进位标志)与OF标志位(溢出标志)1、adc与sbb指令:CF标志位用在加减法的进位与借位操作上:adc指令(addcarry):带进位加法adcax,bx==>(ax)=(ax)+(bx)+CFeg:1EF0001000H+2010001EF0H要求ax、bx、cx分别存
Apollon_krj
·
2017-05-06 23:23
汇编
标志位寄存器与CF、OF标志位的区分
8086CPU
的flag寄存器(16位)各标志位如下(这是32位EFLAG的低十六位图,但是32位与16位是一样的,只不过32位多了16位且高16位没有使用到):标志位寄存器中保存的是当前指令运算的信息状态
Apollon_krj
·
2017-05-05 20:56
8086
汇编学习
之寻址方式、数据类型以及几个数据操作指令
(一)、8086
汇编学习
之基础知识、通用寄存器、CS/IP寄存器与Debug的使用(二)、8086
汇编学习
之DS寄存器、SS/SP寄存器(三)、8086
汇编学习
之[BX],CX寄存器与loop指令,ES
Apollon_krj
·
2017-04-30 00:59
8086
汇编学习
之代码段、数据段、栈段与段地址寄存器
同类学习笔记总结:(一)、8086
汇编学习
之基础知识、通用寄存器、CS/IP寄存器与Debug的使用(二)、8086
汇编学习
之DS寄存器、SS/SP寄存器(三)、8086
汇编学习
之[BX],CX寄存器与
Apollon_krj
·
2017-04-26 23:18
8086
汇编学习
之DS寄存器、SS/SP寄存器
相关博客:8086汇编基础知识、通用寄存器、CS/IP寄存器与Debug的使用一、DS寄存器一个
8086CPU
寄存器均是16位的,而数据类型有以下两种:1Byte=8bit(字节型数据)1word=2Byte
Apollon_krj
·
2017-04-23 23:40
8086
汇编学习
之基础知识、通用寄存器、CS/IP寄存器与Debug的使用
一、基本概念:1、汇编语言的组成:汇编指令+伪指令+符号体系汇编指令:机器码的助记符(因为机器码难以记忆)通过编译器翻译成机器指令,每一个汇编指令对应一个机器指令(机器码);伪指令:指导编译器如何将汇编指令翻译成机器指令,由编译器执行,计算机不执行,没有对应的机器码;符号体系:+、-、*、/等一系列运算符号,由编译器识别,没有对应的机器码。2、指令的概念:机器指令:一连串二进制数字,不同的二进制组
Apollon_krj
·
2017-04-23 00:25
标志寄存器及其标志位
8086CPU
的标志寄存器有16位,其中存储的信息通常被称为程序状态字PSW(标志位),简称flag。flag和其他寄存器不一样,其他寄存器是用来存放数据的,都是整个寄存器具有一个含义。
晨哥是个好演员
·
2017-04-18 10:37
网络
x86
汇编学习
记录-3月28日
/1.使用xorax,ax完成设置寄存器为0一个数和自己进行异或结果为0,因此可以使用xorax,ax完成对寄存器ax清零的操作,这比movax,0来的更高效而且指令占用的内存空间更少。2.使用andax,ax判断设置SF位从而快捷地判断ax的正负性andax,ax不会改变ax的值,但是会影响到标志寄存器SF,在这条语句之后,常常跟上js/jns/jz/jnz从而完成为正跳转、负跳转、0跳转、非0
huizhang0110
·
2017-03-28 23:11
汇编学习
安装DOSBOX及debug.exe教程
相信有很多小伙伴跟我一样,在学习汇编时却发现win764位系统下是无法使用debug.exe的,因为win7x64没有debug.exe这个文件,因此需要安装DOSBOX。需要下载地址的可到我的资源中查找。下面开始安装教程:1.下载后解压并安装DOSBOX,最好安装在c盘以外的盘,下面以安装在d盘为例2.将MASM文件夹移到d盘根目录下3.打开DOSBOX,这时会出现两个窗口。注意:关掉其中一个,
Oath_keeper
·
2017-01-10 11:13
汇编
win7
64位
dosbox
debug
汇编
dosbox
debug
8086CPU
汇编:显示字符串
题目要求在第8行第5列以红色字体显示“Welcometomasm!”编写思路1、将字符存入段地址中2、计算出第8行与第5列处的位置(知识点:了解显存地址段怎样控制屏幕字符显示)3、将字符和属性写入显存对应位置汇编代码assumeds:data,cs:codedatasegmentdb'Welcometomasm!',0dataendscodesegmentstart:movax,datamovds
foryouslgme
·
2016-12-07 15:05
汇编
30天自制操作系统-第3天
8086CPU
的
贾国庆
·
2016-11-09 17:51
通用寄存器
计算的内置寄存器结构分布,以
8086CPU
的内部寄存器为例:16位CPU通用寄存器共有8个,AX,BX,CX,DX,SP,BP,SI,DIAH和AL是将一个16位的寄存器分别作为两个独立的寄存器,高8位记作
baidu_27435045
·
2016-10-31 13:00
cpu
寄存器
32位
通用寄存器
寄存器和栈
2、DS和地址在8086PC中,内存地址由段地址和偏移地址组成;
8086CPU
中,有一个DS寄存器,通常用来存放要访问数据的段地址;执行指令时,
8086CPU
自动取DS中的数据为内存单元的段地址。
汇天下豪杰
·
2016-10-30 10:13
内存
栈
寄存器
X86_汇编
微机原理--第二章(1)
8086的编程结构1)总线接口部件(BIU)2)执行部件(EU)3)8086的寄存器组4)8086总线周期的概念
8086CPU
由两个独立的
jxm_96
·
2016-09-22 20:00
8086
【
汇编学习
】汇编语言读书笔记(第三章)
汇编学习
第三天:寄存器(内存访问)内存中的字存储字单元:存放一个字的内存单元,由0、1两个字节单元组成字单元,即存放一个字型数据(16位)的内存单元,由两个地址连续的内存单元组成。
Tag_sk
·
2016-09-12 19:52
汇编学习
【
汇编学习
】汇编语言读书笔记(第二章)
汇编学习
:寄存器(CPU工作原理)寄存器内部总线实现CPU内部各个器件之间的联系,外部总线实现CPU和主板上其他器件的联系,简单来说,在CPU中:运算器进行信息处理寄存器进行信息存储控制器控制各种器件进行工作内部总线连接各种器件
Tag_sk
·
2016-09-09 21:26
汇编学习
【
汇编学习
】汇编语言读书笔记(第一章)
汇编学习
:基础知识机器语言机器语言是机器指令的结合。机器指令展开来讲就是一台机器可以正确执行的命令。电子计算机的机器指令是一列二进制数字。
Tag_sk
·
2016-09-08 20:25
汇编学习
《一个操作系统的实现》——pmtest1.asm详解
因为在
8086CPU
中,地址线是20位,但寄存器是16位的,最高寻址64KB,它无法寻址到1M内存。
bfboys
·
2016-08-27 22:00
Arm
汇编学习
笔记(九)——高效的分支代码及非对齐数据的访问
分支代码switch(x)在我们平常的代码中是非常常见的,而且也是比较耗时的操作,如果优化以后可以对代码的效率有很大提升。1.对于0<=x
beyond702
·
2016-08-19 16:19
ARM汇编
Arm
汇编学习
笔记(六)——函数调用栈空间以及fp寄存器
Arm上函数调用的规则在ARMSystemDeveloper'sGuide文档中的ATPCS部分有详细的定义,这里主要通过函数调用过程中函数栈的情况来说明fp和sp等寄存器的作用。有关ATPCS的详细内容可以去文档中看。fp叫做framepointer寄存器,即栈帧指针寄存器;sp叫做stackpointer寄存器,即栈指针寄存器。那么它们具体的作用是什么呢?首先,大家知道每个进程都有自己独立的栈
beyond702
·
2016-08-17 12:12
arm汇编
fp
sp
寄存器
函数调用栈空间
ARM汇编
【计算机组成原理】指令系统体系结构
8086CPU
里面有哪些寄存器标志寄存器的内部一个简单的例子
希望之力
·
2016-08-05 21:53
Component
Java千百问_01基本概念(017)_内存物理地址在CPU中如何形成
点击进入_更多_Java千百问1、什么是内存的物理地址我们通过
8086CPU
来说明内存地址是如何形成的。
ooppookid
·
2016-07-09 09:00
物理内存如何形成
java物理内存
cpu段内存
cpu物理内存形成
物理内存地址的形成
汇编学习
笔记01
1.准备工作2.打开DOSBox,输入mountcF:\example3.masmhello.asm4.linkhello.obj5.运行hello.exe
FlyingWWS
·
2016-06-10 19:05
逻辑地址与物理地址的转换
对于问题“
8086CPU
能提供20位的地址信息,可直接对1M个存储单元进行访问,而CPU内部可用来提供地址信息的寄存器都是16位,那怎样用16位寄存器来实现20位地址寻址呢"明白了不少。
MyySophia
·
2016-05-25 23:25
微机原理
进程—内存段机制
内存段机制开始阅读之前可以先看看TheCurseofSegments1.x86的硬件段机制wiki.osdev-SegmentationModesofMemoryAddressingonx861.1段机制的引入就在
8086CPU
unclerunning
·
2016-05-13 15:00
8086汇编(一)
控制寄存器的内容被称为处理器状态字PSW,用来存放
8086CPU
在工作过程中的状态。6个状态标志位: CF:进位标志,加法时最高位出现进位或减法时最高位出现借位,该位为1.
peiyao456
·
2016-05-13 11:00
汇编02
CPU主要有有运算器,控制器,寄存器,三部分组成
8086CPU
有14个寄存器,如AX,BX,CX,DX,SI。。。。
qq_28328931
·
2016-05-08 11:00
(补充)1.1
8086CPU
8086 Intel8086是一个由Intel于1978年所设计的16位微处理器芯片,是x86架构的鼻祖。不久,Intel8088就推出了,拥有一个外部的8位数据总线,允许便宜的芯片用途。它是以8080和8085的设计为基础,拥有类似的寄存器组,但是数据总线扩充为16位。总线界面单元(BusInterfaceUnit)透过6字节预存(prefecth)的队列(queue)位指令给执行单元(Exec
asdf125656as
·
2016-05-06 15:00
汇编语言
Use DS and SS to access the same memory
8086CPU
中有一个DS(DataSegment)寄存器,通常用来存放要访问数据的段地址。
8086CPU
也提供相关的指令以栈的方式LIFO(LastInFirstOut后进先出)来访问内存空间。
eryar
·
2016-05-02 23:00
汇编语言学习第十一章-标志寄存器
本博文系列参考自>第三版,作者:王爽
8086CPU
的标志寄存器有16位,其中存储的信息通常被称为程序状态字(PSW)。除了前面介绍的寄存器。本博文将介绍最后一个寄存器,标志寄存器。
u013018721
·
2016-04-28 13:00
汇编语言
[
汇编学习
笔记][第十七章使用BIOS进行键盘输入和磁盘读写
第十七章使用BIOS进行键盘输入和磁盘读写17.1int9中断例程对键盘输入的处理17.2int16读取键盘缓存区movah,0 int16h 结果:(ah)=扫描码,(al)=ASCLL码。 17.4应用int13h对磁盘进行读写只能以扇区为单位对磁盘进行读写。读写扇区时,要给出面号,磁道号,扇区号。面号,磁道号从0开始,而扇区号从1开始。BIOS提供调用int13h来访问磁盘(ah)=int
zy691357966
·
2016-04-27 18:00
汇编
[
汇编学习
笔记][第十六章直接定址表]
第十六章直接定址表16.1描述了单元长度的标号格式codesegment adb1,2,3,4,5,6,7,8, bdw0 功能此时标号a,b不仅代表了内存单元,还代表了内存长度movax,b =movax,cs:[8] movb,2 =movewordptrcs:[8],2 incb =incwordptrcs:[8] 更重要,提供了一种类似数组的表示方式了(其实跟这里也没关系)moval,
zy691357966
·
2016-04-27 16:00
汇编
[
汇编学习
笔记][第十四章 端口]
第十四章端口和CPU相连的芯片,除了各种储存器外,还有一下三种芯片。各种接口卡(网卡,显卡)上的接口芯片,他们控制接口卡进行工作。主板上的接口芯片,CPU通过它们对部分外设进行访问。其他芯片,用来存储相关的系统信息,或进行相关的输入输出处理。CPU可以直接读写一下三个地方数据CPU内部的寄存器内存单元端口14.1端口的读写CPU最多可以定位64KB个不同的端口。对端口的读写只能用in和out两条命
zy691357966
·
2016-04-27 11:00
[
汇编学习
笔记][第十三章int指令]
第十三章int指令13.1int指令格式:intn,n为中断类型码可以用int指令调用任何一个中断的中断处理程序(简称中断例程)。13.4BIOS和DOS所提供的中断例程BIOS主要包含一下内容硬件系统的检测和初始化外中断和内中断的中断例程用于对硬件设备进行I/O操作的中断例程其他和硬件系统相关的中断例程操作系统DOS提供的中断例程操作系统向程序员提供的编程资源13.5BIOS和DOS中断例程的安
zy691357966
·
2016-04-27 00:00
[
汇编学习
笔记][第十二章内中断]
中断消息可以来自CPU的内部和外部,这一章中,我们主要讨论来自于CPU**内部**的中断消息12.1内中断的产生
8086CPU
中发生以下事件,会产生相应的中断消息。
zy691357966
·
2016-04-27 00:00
汇编
[
汇编学习
笔记][第十一章标志寄存器]
第十一章标志寄存器作用存储相关指令执行结果用来为CPU执行相关指令提供行为依据用来控制CPU的相关工作方式这种特殊寄存器在
8086CPU
被称为标志寄存器(flag),8086标志寄存器有16位其中存储程序状态字
zy691357966
·
2016-04-26 20:00
汇编语言学习第九章-转移指令的原理
8086CPU
的转移行为分为如下几类;1.只改变IP值,称为段内转移。比如jmpax;段内转移又分为短转移和近转移。
u013018721
·
2016-04-26 20:00
汇编语言
[
汇编学习
笔记][第十章 CALL和RET指令]
第十章CALL和RET指令call和ret指令都是转移指令,它们都修改CS和IP。经常被共同用于实现子程序的设计。这一章,我们讲解call和ret指令的原理10.1ret和retfret指令用栈中的数据,修改IP的内容,从而实现近转移(IP)=((ss)*16+(sp))(sp)=(sp)+2等于popIPretf指令用栈中的数据,修改CS和IP的内容,从而实现远转移(IP)=((ss)*16+(
zy691357966
·
2016-04-26 00:00
汇编
[
汇编学习
笔记][第九章转移指令的原理]
第九章转移指令的原理分类jmp转移行为段内转移短转移IP修改范围-128~127近转移IP修改范围-32768~32768段间转移几个其余转移无条件转移(如:jmp)条件转移循环指令(如:loop)过程中断通过深入理解转移指令jmp来理解CPU执行转移指令的基本原理9.1操作符offset操作符offset是伪指令,取得标号的偏移地址。还可以在标号出现之前使用,反正标号最后由编译器统一处理9.2j
zy691357966
·
2016-04-25 22:00
汇编
上一页
9
10
11
12
13
14
15
16
下一页
按字母分类:
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
其他