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汇编学习
汇编学习
笔记(一)AT&T汇编语言以及其与x86的比较
前言几个常识AT&T与Intel汇编语言的比较1.前缀2.操作数的方向3.内存单元操作数4.间接寻址方式5.操作码的后缀movl寄存器寻址立即数寻址直接寻址间接寻址变址寻址前言最近工作了,变得忙起来了,但是博客还是要坚持写的,哈哈之前写过一篇有关arm汇编的学习笔记,貌似当时没有考虑到MIPS,现在就补充一下吧几个常识内存:存储指令CPU:解释和执行指令EIP:一般其修改是通过call,ret,j
richard1230
·
2020-06-26 05:07
汇编
浅谈汇编(2)——堆栈指令
8086CPU
提供相关的指令来以栈的方式访问内存空间。这意味着,我们在基于
8086CPU
编程的时候,可以将一段内存当作栈来使用。
vgg16
·
2020-06-26 05:36
Principle
of
computer
汇编语言—寄存器
8086CPU
的寄存器都是16位的,能存放两个字节。一个寄存器又能分为两个部分,一个高位字节如AH,还有一个地位字节如AL。这两个部分可以单独看成一个八位寄存器来用。
奈方时歇
·
2020-06-26 02:52
汇编语言
8086cpu
学习笔记(4):指令系统
指令系统按功能分类可分为六大类:数据传送指令、数据运算指令、逻辑运算和移位指令、字符串处理指令、控制转移指令、处理器控制指令一、数据传送指令MOV格式:MOV目的,源将源操作数传送到目的操作数。注意:IP寄存器不作为操作数。立即数和CS寄存器不作为目的操作数。两操作数不同时为储存单元和段寄存器。16为立即数不可以直接被传送到DS寄存器中,必须经过AX过度。PUSH格式:PUSH源压栈POP格式:P
sdhdwyx
·
2020-06-26 00:45
8086学习笔记
[069][汇编语言]外中断:CPU 端口(芯片) 外设
CPU端口(芯片)外设CPU端口(芯片)外设.png端口就是芯片里的一些寄存器外设的输入→端口→CPUCPU的输出→端口→外设CPU检测到标志寄存器TF=1时响应中断
8086CPU
设置TFsti设置TF
AkuRinbu
·
2020-06-25 15:06
int指令---
汇编学习
笔记
int指令int指令可以引发中断13.1int指令int指令格式:intn,n为中断类型码,它的功能是引发中断过程。CPU执行intn指令,相当于引发一个n号中断的中断过程,执行过程如下。取中断类型码n标志寄存器入栈,IF=0、TF=0CS、IP入栈(IP)=(n∗4),(CS)=(n∗4+2)(IP)=(n∗4),(CS)=(n∗4+2)13.2编写供应用程序调用的中断例程很简单的例子自己看。1
jak0018
·
2020-06-25 12:25
汇编语言
寄存器(内存访问)---
汇编学习
笔记
寄存器(内存访问)序言第二章,我们主要从CPU如何执行指令的角度讲解了
8086CPU
的逻辑结构、形成物理地址的方法、相关的寄存器以及一些指令。这一章,我们从访问内存的角度继续学习几个寄存器。
jak0018
·
2020-06-25 12:24
汇编语言
寄存器---
汇编学习
笔记
第二章寄存器2.0寄存器的绪论一个典型的CPU由运算器、控制器、寄存器(CPU工作原理)等器件构成。内部总线实现CPU内部各个器件之间的联系,外部总线实现CPU和主板其他器件的联系。在CPU中(下列重要内容)运算器进行信息处理;寄存器进行信息存储;控制器控制各个器件进行工作;内部总线连接各种器件,在它们之间进行数据的传送。对于汇编程序员来说,CPU中的主要部件是寄存器。寄存器是CPU中与程序员可以
jak0018
·
2020-06-25 12:24
汇编语言
CALL和RET指令---
汇编学习
笔记
CALL和RET指令call和ret指令都是转移指令,它们都修改IP,或同时修改CS和IP。它们经常被共同用来实现子程序的设计。10.1ret和retfret指令用栈中的数据,修改IP的内容,从而实现近转移;retf指令用栈中的数据,修改CS和IP的内容,从而实现远转移。CPU执行ret指令时,进行下面2步操作(相当于popIP):(IP)=((ss)∗16+(sp))(IP)=((ss)∗16+
jak0018
·
2020-06-25 12:24
汇编语言
从头开始学习代码——
汇编学习
总结
-汇编语言的定义及衍生计算机从发明开始的定义其实是用作计算领域的,我们现代的计算机功能已经越来越复杂,实现的作用也越来越大,但是究其根本,计算机所做的工作仍然还是对于数据的操作和计算。最初的时候,并没有语言的概念,所有的计算机操作都是通过高低电压(大家就不要纠结如何通过高低电位差进行计算机操作了)的变化来进行的,即是我们所说的01010001010这种形式,用二进制数字形象的表示高低电位差,这样的
先睹为快
·
2020-06-25 09:52
思维篇
C语言篇
Java篇
程序篇
问题记录篇
dword ptr指令详细解析[转载]
8086CPU
的指令,可以处理两种尺寸的数据,byte和word。所以在机器指令中要指明,指令进行的是字操作还是字节操作对于这个问题,汇编语言中用一下方法处理。
MC-DEV
·
2020-06-25 07:13
汇编语言
汇编大作业(清屏和显示特定字符和拷贝自己)
汇编学习
记录
收集到一下的必须资料-显示缓冲区80*25-一个字符占用两个字节,分别放ASCII码和属性assumecs:codecodesegmentstart:movax,0b800hmovds,axmovcx,7d0h;外循环设置为25*80,输出3次movsi,0hs0:movbyteptr[si],20haddsi,1movbyteptr[si],0f8haddsi,1loops0movax,4c00
dreaming_waiting
·
2020-06-24 10:03
CTF--逆向
汇编
保护模式下寻址
因为在
8086CPU
中,地址线是20位,但寄存器是16位的,最高寻址64KB,它无法寻址到1M内存。于是
littlehedgehog
·
2020-06-24 06:17
Masm&Nasm
Operating
System
linux的
汇编学习
(3)---进入保护模式
【完整代码已经归档到https://github.com/linzhanglong/mini_bootloader】现在我们完成我们第一个主要的功能:引导Linux内核。首先我们要准备一个Linux内核文件bzImag。如何引导Linux内核呢?需要做几件事情:1.设置GDT,设置访问内存权限;2.开启A20地址线(原因:http://blog.csdn.net/ruyanhai/article/
TigerAndBear
·
2020-06-24 05:08
[内联汇编]扩展asm:格式、占位符、跳转、内联汇编宏函数
使用教材《汇编语言程序设计》https://www.jianshu.com/p/8473cd0e92b6第13章使用内联
汇编学习
资料GCC-Inline-Assembly-HOWTOhttps://ibiblio.org
AkuRinbu
·
2020-06-24 04:54
idapro反
汇编学习
(一)
实例代码#include"stdafx.h"#include#include#include#include//x64//8字节对齐classCTestC{charch;//1+3virtualvoidfun(){}//8voidtest(){}intn;//4};//sizeof(CTestC);//16;classCTestD{virtualvoidfun(){}};classCTest{vi
小青峰_jd
·
2020-06-23 20:20
IDA
Pro
反汇编
汇编语言Assembly(一)
书上和网上介绍的一般是16位
8086CPU
、X86-32和X86-64的CPU。王爽的《汇编语言》中介绍的是8086的16位CPU,而公开课中讲的却是32位和64
涯若
·
2020-06-23 18:38
linux
ARM
汇编学习
前言:以前用ARM的IDE工具,使用的是ARM标准的汇编语言。现在要使用GNU的工具,当然要了解一点GNUARM汇编的不同之处。其实非常的简单,浏览一下文档然后再看看程序就完全可以搞定了,或者你硬着头皮看GNUARM的汇编程序,用不了多少时间你就就可以无师自通了。个人比较健忘,还是把文档翻译了一下,算是给自己一个避免遗忘的理由吧。ARM汇编语言源程序语句,一般由指令,伪操作,宏指令和伪指令作成.A
daojin505
·
2020-06-23 02:08
8086CPU
提供的栈机制简介
我们先简单提一下栈的概念:栈是一种具有特殊访问形式的存储空间,特殊性在于数据后进先出。8086提供入栈(PUSH)和出栈(POP)指令:比如pushax表示将AX寄存器中数据送入栈中,popax表示将栈顶取出数据送入AX寄存器中(数据的存取按小端存放的规则)movax,0123Hpushaxmovbx2266Hpushbxmovcx1122Hpushcxpopaxpopbxpopcx有关栈存储空间
萌小宏
·
2020-06-22 17:36
汇编语言
第三章 寄存器(内存访问)
引言在第2章中,我们主要从CPU如何执行指令的角度讲解了
8086CPU
的逻辑结构、形成物理地址的方法、相关的寄存器以及一些指令。这一章中,我们从访问内存的角度继续学习几个寄存器。
bangren3304
·
2020-06-22 17:03
汇编学习
笔记:对抗反汇编实验2019092801
汇编学习
笔记:对抗反汇编实验2019092801实验描述实验环境实验过程实验结论实验描述使用相连的jz和jnz指令跳转到紧接着jnz指令的call指令的第二个字节。call指令实际上无效。
Niatruc
·
2020-06-22 02:44
汇编
ARM
汇编学习
笔记
ARM
汇编学习
笔记2008-06-807:01:05大中小标签:IT/科技这两天参加了一个编写操作系统的项目,因为要做很多底层的东西,而且这个操作系统是嵌入式的,所以开始学习ARM汇编,发现ARM汇编和一般
IT_yulei_3g
·
2020-06-21 22:41
关于汇编里面的PTR--天哪,终于弄懂了
8086CPU
的指令,可以处理两种尺寸的数据,byte和word。所以在机器指令中要指明,指令进行的是字操作还是字节操作。对于这个问题,汇编语言中用一下方法处理。
GaryZhang29
·
2020-06-21 21:40
linux内核完全剖析0.12笔记--第四章 80x86保护模式及其编程
1,首先是关于
8086cpu
的各个标志寄存器,其内容如下:2,内存管理的寄存器,主要用于实现分段内存管
AstrayLinux
·
2020-06-21 17:22
linux内核学习
寄存器小结
寄存器小结AXBXCXDX存放一般性数据,被称为通用寄存器CS:IPCS为代码段寄存器,IP为指令指针寄存器在8086PC机中,任意时刻,设CS=M,IP=N,
8086CPU
将从内存M*16+N单元开始
不明电波
·
2020-06-21 17:17
IDA反
汇编学习
-转
IDAPro是一款强大的反汇编软件,特有的IDA视图和交叉引用,可以方便理解程序逻辑和快速定位代码片断,以方便修改。IDA视图示例程序下面会通过修改示例程序的输出字符串,来讲解如何使用IDAPro。#includemain(){intn;scanf("%d",&n);if(n>0)printf("a>0");//后面会用IDAPro把'a'改成'n'elseprintf("n0”修正为“n>0”。
wh_
·
2020-06-21 14:28
ida
汇编学习
,错误汇总
一、errorA2010:Syntaxerror语法错误,写错程序了二、errorA2105:Expected:instructionordirective这个就是告诉你命令写错了,看看你是不是把某个mov写成moc了(我就是这样找了半天,却不知道masm已经提示了哪行出问题),要不然就是你漏掉了什么…三、errorA2042:Constantexpectedmovbx,dl*160+dh*2这东
眺望蓝天
·
2020-06-21 04:00
E8/E9/FF 15/FF25指令--
汇编学习
笔记
E8/FF15:这两个指令都是call指令,两个指令后面跟的数据有不同的含义。011472A1E89FA3FFFFcallSub_1(01141645h)011472B6FF15D0001A01calldwordptr[__imp__MessageBoxW@16(011A00D0h)]如上面代码所示:Sub_1的地址是011472A1+5+FFFFA39F=目标地址也就是说E8后面跟的是偏移地址,
KookNut39
·
2020-05-07 16:52
Ring3注入和Hook
CISC(复杂指令集)和RISC(简单指令集),x86、ARM、MIPS架构
指令系统诞生之初就有两种设计思想或者说流派,CISC(复杂指令集)和RISC(简单指令集),CISC系统复杂庞大
8086CPU
的指令就有300多条,而大多数RISC只有几十条指令。
hostid
·
2020-04-12 00:00
《汇编语言》读书笔记:寄存器
每个寄存器又可以分开成高8位和低8位的两个寄存器来使用ax:ah,albx:bh,blcx:ch,cldx:dh,dlCX:常用作loop循环计数2.地址总线地址总线的宽度决定了CPU的寻址能力(可访问的内存空间大小),
8086CPU
GTMYang
·
2020-04-11 14:11
反
汇编学习
笔记5 - 循环&选择
循环&选择cmp(Compare)比较指令 CMP把一个寄存器的内容和另一个寄存器的内容或立即数进行比较。但不存储结果,只是正确的更改标志。 一般CMP做完判断后会进行跳转,后面通常会跟上B指令!BL标号:跳转到标号处执行B.GT标号:比较结果是大于(greaterthan),执行标号,否则不跳转B.GE标号:比较结果是大于等于(greaterthanorequalto),执行标号,否则不
sqatm
·
2020-04-10 01:14
(转)“段寄存器”的故事
8086CPU
的数据总线是16位。地址总线的宽度不一定要与A
黑色小核
·
2020-04-03 03:29
01.
汇编学习
体会与心得
为了深入学习逆向工程,硬着头皮看起了汇编语言的相关书籍。先是在网上零星的查找相关资料与各种汇编命令的含义。效果就是基本看了就忘,忘了再查。然后从网上下载了一本叫《汇编语言》的书籍,还是比较适合入门的。竟然还有习题与作业,这本书大致都是在早晨起床的半个小时到一个小时之内的时间里阅读,感觉有点回到学生时代了。书翻了一半才感觉到一丝不对劲,书中所讲解到的寄存器全是ax、bx、cx、dx,与我能接触到的汇
秦砖
·
2020-04-02 06:51
寄存器与内存访问
2.1通用寄存器
8086CPU
的所有寄存器都是16位,可以存放两个字节。AX、BX、CX、DX通常用来存放一般性的数据,被称为通用寄存器。
mecury
·
2020-03-27 22:38
第2章 寄存器
问题:那么,
8086CPU
如何用内部
后备干部
·
2020-03-25 01:35
汇编语言 | 03 - 内存访问
在上一章我们主要从CPU如何执行指令的角度,学习了
8086CPU
的逻辑结构、合成物理地址的方法、相关寄存器以及一些常用指令。本意我们将从内存访问的角度继续学习几个重要的寄存器。
夏海峰
·
2020-03-21 04:50
ARM64
汇编学习
笔记四(IF、循环和 Switch)
cmp(Compare)比较指令cmp:把一个寄存器的内容和另一个寄存器的内容或立即数进行比较。但不存储结果,只是正确的更改标志。一般cmp做完判断后会进行跳转,后面通常会跟上B指令。BL标号:跳转到标号处执行B.LT标号:比较结果是小于(lessthan),执行标号,否则不跳转;B.LE标号:比较结果是小于等于(lessthanorequalto),执行标号,否则不跳转;B.GT标号:比较结果是
原_子_弹
·
2020-03-18 07:42
汇编学习
(一)
001--初识汇编我们在学习逆向开发之前,我们要了解一个基本的逆向原理.首先我们是逆向iOS系统上面的APP.那么我们知道,一个APP安装在手机上面的可执行文件本质上是二进制文件.因为iPhone手机本质上执行的指令是二进制.是由手机上的CPU执行的.所以逆向开发是建立在分析二进制上面.所以今天我们接下来的课程从非常基础的东西开始讲解.汇编语言的发展机器语言由0和1组成的机器指令.加:010000
默默_David
·
2020-03-14 14:40
汇编语言-标志寄存器
8086CPU
的标志寄存器有16位,其中存储的信息通常被称为程序状态字(PSW)。flag寄存器是按位起作用的,也就是说,它的每一位都有专门的含义,记录特定的信息。
放飞梦想C
·
2020-03-13 18:00
51
汇编学习
51
汇编学习
参考汇编教程http://www.51hei.com/mcuteach/252.html汇编指令集查询http://www.51hei.com/mcu/2972.htmlhttp://wenku.baidu.com
indEmpire
·
2020-03-12 11:16
实模式和保护模式
Intel早期的
8086CPU
提供了20根地址线,可寻址空间范围即0~2^20(
101dog
·
2020-03-07 05:55
逆向开发--汇编基础
个字节组成,这2个字节分别称为字的高字节和低字节一个内存单元存放一个字节的数据内存数据存放示意上图第一行:10000H表示内存地址右侧方格表示内存单元内存单元内为数据23(一个字节)2.8086CPU简介
8086CPU
ZinkLin
·
2020-03-04 02:05
汇编学习
笔记
地址段地址偏移地址注释dssiesdissbpcsip两者组成的地址是指令spbx指令执行过程cpu从cs:ip所组成的地址中读取指令,将指令放到指令缓存器中IP=IP+所读指令的字节长度执行指令缓存器中的指令,并回到步骤1(ip指令顺序)指令转移指令jmpcs:ip如jmp2000:1000jmpip如jmp1000移动指令movaxbx运算指令addaxbxsubaxax调试命令命令注释r展示
oo追xx
·
2020-03-02 09:23
《汇编语言》王爽,学习笔记(寻址方式)
寻址是X86系列CPU中最大的一个特色,也是从
8086CPU
中继承下来的。现在就来谈谈8086中的寻址方式。
MisakaMikotoSAM
·
2020-03-01 18:34
汇编语言-第八章总结
bx,bp,bi,si在
8086CPU
中,只有这四个寄存器可以使用[...]这四个寄存器可以单个出现,或者能以四种组合出现:[bx+si],[bx+di],[bp+si],[bp+di]其中当使用bx时
Cs丶Portrait
·
2020-03-01 03:54
汇编笔记7
8086CPU
中的寄存器通用寄存器:AX,BX,CX,DX,SP,BP,SI,DI。指令寄存器:IP标志寄存器:FR段寄存器:CS,DS,ES,SS。
余生筑
·
2020-02-29 16:37
第9章 转移指令原理
8086CPU
把转移指令分为5种:1、无条
Stroman
·
2020-02-28 10:55
X86汇编3.内存访问
1.内存中字的存储
8086CPU
中,用16位寄存器来存储一个字,高8位存放高字节,低8位存放低字节。在内存中存储时,由于内存单元是字节单元,一个单元存放一个字节,那么一个字(2字节,16位)
Lee_1985
·
2020-02-25 17:21
X86
汇编
语言
8086
X86汇编
ARM64
汇编学习
笔记三(状态寄存器、内存分布)
状态寄存器--CPSR寄存器CPU内部的寄存器中,有一种特殊的寄存器(对于不同的处理器,个数和结构都可能不同)。这种寄存器在ARM中,被称为状态寄存器就是CPSR(currentprogramstatusregister)寄存器。CPSR和其他寄存器不一样,其他寄存器是用来存放数据的,都是整个寄存器具有一个含义。而CPSR寄存器是按位起作用的,也就是说,它的每一位都有专门的含义,记录特定的信息。也
原_子_弹
·
2020-02-23 20:00
寄存器基础知识四之段寄存器
8086CPU
有4个段寄存器:CS、DS、SS、ES当
8086CPU
要访问内存时,由这4个段寄存器提供内存单元的段地址。
一川烟草i蓑衣
·
2020-02-22 15:43
上一页
6
7
8
9
10
11
12
13
下一页
按字母分类:
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
其他