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
IA-32汇编学习
Intel汇编语言程序设计学习-第六章 条件处理-中
6.3条件跳转6.3.1条件结构在
IA-32
指令集中没有高级的逻辑结构,但无论多么复杂的结构,都可以使用比较和跳转指令组合来实现。
TK13
·
2020-08-11 13:58
Intel汇编语言程序设计
IA-32
体系结构粗浅认识
所谓
IA-32
即IntelArchitecture-32,是指从intel386到奔腾的系列处理器。
IA-32
体系结构这本书里只用了一章作了简略的介绍,但是里面还
Vccxx
·
2020-08-11 12:11
IA-32汇编学习
简单C程序在
IA-32
CPU上运行过程的分析
本文将通过编译器生成的汇编代码分析C程序在
IA-32
体系PC上的运行流程实验环境:gcc4.8.2C语言程序的内存结构C代码如下intg(intx){returnx+1;}intf(intx){returng
a594896082
·
2020-08-11 11:36
Intel- 64 与
IA-32
架构软件开发人员手册 中文版
1.4相关文献Intel-64与
IA-32
处理器相关文献在网上列出:http://www.intel.com/content/www/us/en/processors/architectures-software-developer-manuals.html
IT老混混
·
2020-08-11 11:20
系统编程
汇编学习
笔记 第2章 Intel微处理器
机器语言——>汇编语言——>高级语言汇编语言的特点:1.与硬件相关2.与机器指令一一对应3.须详细描述“如何做”4.可移植性差第2章Intel微处理器.微处理器结构.内存储器结构.段概念的引进.内存储器的地址.堆栈.I/O结构8086微处理器结构CPU功能结构:总线接口部件BIU(BusInterfaceUnit)--完成CPU与主存储器或外围设备之间的信息传送执行部件EU(ExecuteUnit
Slience_Perseverance
·
2020-08-11 11:16
汇编学习
Intel汇编语言程序设计学习-第一章 基本概念
第一章基本概念1.1简单介绍本书着重讲述MS-Windows平台上
IA-32
(IntelArchitecture32bit,英特尔32位体系架构)兼容微处理器的汇编语言程序设计,可以使用Intel或AMD
TK13
·
2020-08-11 10:35
Intel汇编语言程序设计
Intel 汇编语言程序设计读书笔记
第2章
IA-32
处理器体系结构2.1.4#网络引用#程序是一个没有生命的实体,只有处理器赋予程序生命时,它才能成为一个活动的实体,我们称其为进程。开个QQ,开了一个进程;开了迅雷,开了一个进程。
huguanglinux
·
2020-08-11 10:14
汇编语言
asm
汇编语言程序设计读书笔记
#################################################################################################一,
IA
aishen944
·
2020-08-11 10:23
linux
Intel汇编语言程序设计读书笔记(
IA-32
处理器体系结构)
这一节的内容比较少,有一些是原来《计算机组成原理》讲过的内容,很多太熟悉的东西,就不在上面写了。这里只写写我觉得有用的,或者应该记下来的东西。所有的汇编语句都是一条指令,但是执行时间是不一样的。最快的只需要一个CPU的时钟周期,而有些指令的执行要超过50个时钟周期。明显乘法指令就是很耗时的指令。还有一点就是,访问内存是非常慢的,相对于寄存器来讲,一般都需要CPU等待。我只关注的保护模式,其它的模式
Code_My_Life
·
2020-08-11 10:03
黎宏伟
Google V8 引擎
在运行JavaScript之前,相比其它的JavaScript的引擎转换成字节码或解释执行,V8将其编译成原生机器码(
IA-32
,x86-64,ARM,orMIPSCPUs),并且使用了如内联缓存(inlinecaching
xiangzhihong8
·
2020-08-11 01:22
前端
汇编学习
笔记---(1)基础知识
汇编学习
笔记---(1)基础知识本学习笔记仅仅是我自己作为初学者,学习汇编知识的过程记录,本人从事图像处理行业,使用C编程,为了编写更为高效的图像处理程序,于是开始学习汇编语言。
Trent1985
·
2020-08-10 14:38
汇编语言学习笔记
汇编学习
笔记---(2)基础知识
今天,接着上次,继续学习汇编语言,主要对内存地址空间、主板、接卡口、存储芯片等进行了解。什么是内存地址空间?要搞清楚这个问题,我们首先要知道主板和接口卡。每个PC都会有一个主板,主板上附有核心器件,包括CPU、存储器、外围芯片组、扩展插槽等,它们通过地址总线+数据总线+控制总线相连。接口卡啥作用,说白了就是通过总线接收CPU发送的命令,对显示器、音响等外部设备进行控制。一台PC中主要有两种存储器:
Trent1985
·
2020-08-10 14:38
汇编语言学习笔记
AQS(三)
2、处理器如何实现原子操作32位
IA-32
处理器使用基于对缓存加锁或总线加锁的方式来实现多处理器之间的原子操作2.1处理器自动保证基本内存操作
大白人
·
2020-08-10 00:02
java后端
操作系统_实验环境准备
(本实验仅涉及在Linux环境下操作的代码,仅供个人学习)主要平台和工具简介1.x86模拟器BochsBochs是一个免费且开放源代码的
IA-32
(x86)架构PC机模拟器。
qq_39951635
·
2020-08-10 00:11
操作系统
初步学习
ARM的
汇编学习
如果你还是学习电子通信的学生又或者是从事嵌入式电子通信工作的工程师、助理工程、实习生、打杂员,笔者想你也曾经对汇编有着复杂的恐惧,甚至是这一恐惧是大学里学《微型计算机技术》开始的。但是就笔者浅薄的工作经历看来,如果你能掌握或者退一步说能看懂汇编,那你才能享受到作为一名底层硬件程序员的乐趣。试想一下用汇编任意操纵一款ARM内核处理器的寄存器、内存空间、外设空间,把它玩弄于手掌之中,这样是不是很有成就
wuyuwei45
·
2020-08-09 15:11
ARM架构
Linux 内核性能和可伸缩性
硬件和软件
IA-32
体系结构:数据库:查询数据库基准测试程序,而在硬件上,采用带大磁盘配置的8路SMP系统。数据库软件采用IBMDB2forLinux,SCSI控制器是IBMServeRAID4H。
niu870781892
·
2020-08-08 18:23
汇编学习
-堆栈与子程序
任何程序在运行过程中都需要使用堆栈,操作系统为每一个程序(进程及线程)设置一个堆栈。在使用高级语言编程时,源程序中使用的函数调用、局部变量都要用到堆栈,由编译器来负责生成有关的机器指令。我的理解,堆栈就是维护当前线程中运行状态的一个数据结构,这种状态包括:需要传递的变量,函数的返回地址,局部变量等等。与堆栈相关的3个寄存器是:SS,ESP,EBP。ESP寄存器中的内容作为堆栈的当前指针。PUSH,
lyyyuna
·
2020-08-08 17:29
汇编语言
什么是寄存器——
汇编学习
笔记(一)
计算机寄存器分类简介:32位CPU所含有的寄存器有:4个数据寄存器(EAX、EBX、ECX和EDX)2个变址和指针寄存器(ESI和EDI)2个指针寄存器(ESP和EBP)6个段寄存器(ES、CS、SS、DS、FS和GS)1个指令指针寄存器(EIP)1个标志寄存器(EFlags)1、数据寄存器数据寄存器主要用来保存操作数和运算结果等信息,从而节省读取操作数所需占用总线和访问存储器的时间。32位CPU
cqkxboy168
·
2020-08-08 14:57
8086汇编
嵌入式Linux中ARM gcc嵌套
汇编学习
-ARM GCC Inside Assembler
在使用gcc编译的时候,可以在C语言程序中嵌套汇编指令,这样极大的方便在高级语言中使用跟配件相关的指令。在gcc中嵌套的汇编指令跟纯汇编文件的语法有一点不一样,在gcc中嵌套指令的格式是固定的:__asm__(code:outputoperandlist:inputoperandlist:clobberlist);__asm__(汇编语句模板:输出部分: 输入部分: 破坏描述部分);其中包括四个部
Yao_GUET
·
2020-08-08 13:33
Linux
通过retf和调用门实现特权级转换
Intel64和
IA-32
架构处理器在进入保护模式之后,就会有一些列保护机制。其中出现了三个特别重要的东西:CPL、DPL、RPL。
可乐吧kaito
·
2020-08-07 20:13
kOS
kernel
汇编学习
笔记(一)
汇编语言的组成1)汇编指令:机器码的助记符,有对应的机器码。2)伪指令:没有对应的机器码,由编译器执行,计算机并不执行。3)其他符号:如+、-、*、/等,由编译器识别,没有对应的机器码。CPU的组成1)运算器:信息处理。2)寄存器:信息存储。3)控制器:控制各种器件工作。4)控制总线:寄存器1)汇编程序员可以用指令读写2)寄存器的数量、结构因CPU不同而不同3)8086的14个寄存器:AX、BX、
weixin_34239592
·
2020-08-07 20:54
C++反
汇编学习
笔记(二)
Chinese:1、地址指针引用C++中地址标号用16进制表示,取一个变量地址使用&操作符,只有变量才存在内存地址,常量没有地址(不包括const定义的伪常量)指针是一种数据类型,用于保存各种数据类型在内存中的地址。指针变量也可以取出地址,所以会出现多级指针。C++中引用不可以单独定义,定义的时候必须初始化。引用表示一个变量的别名,对它的任何操作,本质都是在操作它所表示的变量。2、指针和地址的区别
weixin_30595035
·
2020-08-07 19:21
Java并发多线程学习笔记
如果没有发生变化则交换成新值)CPU流水线CPUpipeline–内存顺序冲突Memoryorderviolation–一般由假共享内存引起,出现冲突时,cpu流水线必须清空2、处理器如何实现原子操作32位
IA
风行者_斌
·
2020-08-07 18:43
多线程
51单片机
汇编学习
例程(6)——74HC573数码管篇
6.ASM6_Seg_573:74HC573锁存器控制数码管静态显示/*********************************************************************************@fileSeg573.asm*@authorAlex——小白*@versionV1.0*@date2019.9.1*@brief74HC573控制数码管*@store
Smile_shao
·
2020-08-07 12:47
51汇编学习例程
汇编学习
--控制执行流程
2019独角兽企业重金招聘Python工程师标准>>>一、指令指针指令指针确定程序中的哪条指令是应该执行的下一条指令。它按照顺序的方式处理应用程序中编写的指令码。程序不能直接修改指令指针。程序员不具有使用MOV指令直接将EIP寄存器的值改为指向内存中的不同位置的能力。但是,可以利用能够改动指令指针值的指令。这些指令称为分(branch)。分支指令可以改动EIP寄存器的值,要么是无条件改动(无条件分
weixin_34393428
·
2020-08-05 15:41
uboot移植之arm
汇编学习
移植uboot到arm开发板上,必须要修改uboot代码中与硬件密切相关的部分,而修改这部分代码的前提,就是要熟悉arm硬件基础以及arm汇编。ARM汇编的必读无论是体系结构还是指令集,大家或多或少都应该对X86汇编有些了解,而对于嵌入式领域已被广泛采用的ARM处理器,了解的可能并不多。如果你有兴趣从事嵌入式方面的开发,那么了解一些RISC体系结构和ARM汇编的知识还是有必要的。这里,我们找出了这
victory08
·
2020-08-05 12:45
其他
Xen的半虚拟化(Paravirtualization)
三个特权级
IA-32
体系提供了4个特权级别,正常情况下只用了2个,操作系统运行在Ring0,而应用程序运行在Ring3。
weixin_33856370
·
2020-08-04 20:10
汇编学习
:float与double速度问题
X86处理器包含两种类型的浮点数寄存器。第一种使用8个浮点寄存器组成浮点寄存器栈,另一种为向量寄存器(XMM,YMM),它们对于单双精度的处理是不同的。本文将讨论两种模式下的浮点数计算速度问题。一、当我们编译32位程序时,使用的是x87指令集,即使用浮点寄存器堆栈进行浮点计算。此种情况下,单精度与双精度的处理是统一的,故计算速度上没有差异。我们可以做如下验证:floata,b,c;c=a*b;汇编
xiaoluo91
·
2020-08-04 18:41
汇编
c/c++
汇编学习
寄存器,有十六个介绍通用寄存器,一共八个,分别是EAX、EBX、ECX、EDX、ESP、EBP、EDI、ESI。其中,EAX—EDX这四个寄存器又可称为数据寄存器,你除了直接访问外,还可分别对其高十六位和低十六位它们的低十六位就是把它们前边儿的E去掉,即EAX的低十六位就是AX。而且它们的低十六位又可以分别进行八位访问,即AX还可分为AH(高八位)AL(低八位)。其它三个寄存器请自行推断这四个寄存
kuanghong
·
2020-08-04 15:08
8086
汇编学习
之[BX],CX寄存器与loop指令,ES寄存器等
同类学习笔记总结:(一)、8086
汇编学习
之基础知识、通用寄存器、CS/IP寄存器与Debug的使用(二)、8086
汇编学习
之DS寄存器、SS/SP寄存器一、汇编程序的基本格式:1、基本格式与解析:assumecs
Apollon_krj
·
2020-08-04 11:13
汇编学习
-寄存器(内存访问)&栈机制
8086CPU中除了常见的AX,BX,CX,DX等4个通用寄存器外,还存在着其他不同类型的寄存器,如存储代码段地址的CS,以及代码段偏移地址的IP等。这里先解释DS(存放数据段地址的寄存器)。8086CPU默认的将DS寄存器中存放的数据为内存单元的段地址。8086CPU不允许直接对段地址进行赋值操作,因此如果想制定访问的内存地址,在设置段地址DS时,可以先将地址数据mov到AX中,然后再movDS
Sunny123
·
2020-08-04 00:24
汇编学习
CPU架构及指令集之研究
由于数字并不能作为注册商标,现在Intel把x86-32称为
IA-32
,即IntelArchitecture,32-bit。x86架构于1978年推出的Intel8086
椰子哥·天行者
·
2020-08-03 17:52
小白防坑
王爽,
汇编学习
,实验4
编程,向内存0:200~0:23F依次传送数据0~63(3FH),程序中只能使用9条指令,9条指令中包括“movax,4c00h"和“int21h”。;向内存0:200~0:23f依次传送数据0~63(3fh);分析0000:0200~00000:023f;assumecs:codecodesegmentmovax,0hmovds,axmovbx,0200hmovcx,40hs:movds:[bx
飘…
·
2020-07-31 20:11
C
PIC16F684
汇编学习
笔记
1、端口:PORTA6位双向口方向寄存器TRISA=1输入=0输出注:RA3例外,始终为输入,TRIS位始终读1.当MCLRE=1时,RA3读为0;2、常用指令:MOVLWk;将立即数存入W寄存器中MOVWFf;将W的内容存入f寄存器中MOVFf,d;d=0,f中的内容被传送至W寄存器d=1,f的内容存在f本身,零标志位受影响BSFf,b;f寄存器中的第b位被置1BCFf,b;f寄存器中的第b被清
weixin_30768661
·
2020-07-30 22:46
Intel- 64 与
IA-32
架构软件开发人员手册 中文版
使用该文档,除了你与因特尔有任何协议外,应接受以下条款:你不得以任何侵权的方式使用该文档或其他法律认为与这里所描述的与因特尔有关的产品。你同意对因特尔此后起草的任何专利授予非独家的,免版税的许可,包括这里公开的内容。本文提供的信息与因特尔产品有关,未经许可,不得反言该文件的知识产权。除了因特尔条款的规定,对次类产品的销售情况,因特尔不承担任何责任,有关销售和/或使用因特尔的产品,包括赔偿责任或担保
IT老混混
·
2020-07-30 19:28
系统编程
Intel架构程序员手册(翻译-连载)
注解:Intel64和
IA-32
架构软件开发者手册包含五卷内容:基本架构,刊次号253665;指令集参考书A-M,刊次号253666;指令集参考书N-Z,刊次号2536
sunlei5788
·
2020-07-30 19:51
Intel
架构
C/C++深层探索——读书笔记
PC一般是基于
IA-32
微处理器,属于little-endian。某些RISC架构的CPU,例如SPARC、POWERPC等,则属于big-endian。
newusb
·
2020-07-29 21:06
VC++
读书
编译器
扩展
存储
c
语言
操作系统之地址映射与共享实验
实验内容1、用Bochs调试工具跟踪Linux0.11的地址翻译(地址映射)过程,了解
IA-32
和Linux0.11的内存理机制。2、在Ubuntu上编写多进程的生产者—消费者程序,用共享内存做缓冲。
小段孩
·
2020-07-28 03:14
os操作系统
工作中的一些效率方法记录
-name".git"|xargsrm-RfSwift
汇编学习
网站https://swift.godbolt.org/微信双开open-n/App
面试小集
·
2020-07-28 00:57
汇编学习
笔记----8086CPU的段寄存器
(1)在8086CPU中,它是16bit结构,一次可以传送一个字的数据,但其地址总线有20根,一次可以传送2的20次方的数据也就是说它的寻址能力为1MB,很明显,如果将地址从CPU内部简单的发出来,一次就只能传送16bit的地址,寻址能力只有64KB了。至于为什么这么设计,真心还不知道,但8086CPU采用了用两个地址相加的方法来解决了这种消耗。8086CPU提供一个16bit的段地址和一个16b
fengxiaoke_fxk
·
2020-07-27 22:00
汇编学习
汇编学习
笔记之阶码与移码
原码反码补码都很常见,计算机中进行加减运算是用补码来进行运算的。学习汇编时,见到了移码这个词,不太懂,经过这两天的理解,记录一下我的心得感受。书上写的正数x=+11001,它的移码为[x]移=111001,我一直不理解为什么多了那一位,现在突然反应过来书上给的正数那是一个真值,也就是我们平时写的数,符号位是用+/-来表示,但是移码是针对机器来说的,所以多出的那一位其实是机器上表示的符号位,就是把x
fancy_track
·
2020-07-27 21:38
组成原
2. Bochs工程概述
开源Bochs介绍Bochs是一个用C++写的高移植性的开源
IA-32
架构的PC模拟器。它模拟了Intelx86CPU,常见IO设备以及一个BIOS。
李海伟_lihaiwei
·
2020-07-27 15:03
汇编学习
小记(三)-查表
实验目的掌握xlat指令查表方法通过不同的存储器寻址方式实现查表操作参考:课本68页windows挂载mountce:\masmxlat每个单元项在内存中只能占用一个字节1.使用xlat指令进行查表【1】.使用xlat指令条件(1)要求给出的数,与你要查找的内容在表中的偏移位置是相等关系(2)xlat指令要求你查找的表中的内容不能超过8个二进制位的表示范围image【2】.使用xlat指令的步骤-
葭葭葭葭葭
·
2020-07-27 11:00
汇编总结(4)——字符串操作和位操作
字符串操作首先明确什么是字符串:字符串是字符的一个序列,对字符串的操作处理包括复制、比较和检索等,为了有效地处理字符串,
IA-32
系列处理器有专门处理字符串的指令,称之为字符串操作指令,简称为串操作指令
ai-exception
·
2020-07-16 06:13
汇编
ARM
汇编学习
-1
.text.global_start.text部分是处理器开始执行代码的地方,指定了后续编译出来的内容放在代码段【可执行】,是arm-gcc编译器的关键词。.global关键字用来让一个符号对链接器可见,可以供其他链接对象模块使用;告诉编译器后续跟的是一个全局可见的名字【可能是变量,也可以是函数名】.global_start让_start符号成为可见的标识符,这样链接器就知道跳转到程序中的什么地方
夜雪-初霁
·
2020-07-16 03:00
嵌入式Linux
ARM汇编
Arm
汇编学习
笔记(一)——编写编译并执行简单汇编文件
1.简单编译汇编文件并查看建立一个test.S文件,并输入以下内容:movr0,r1命令行下输入命令:arm-linux-androideabi-astest.S-otest.o得到test.o反汇编.o文件查看汇编代码,输入命令:arm-linux-androideabi-objdump-dtest.o得到以下输出:test.o:fileformatelf32-littlearmDisassem
beyond702
·
2020-07-15 20:03
ARM汇编
Arm
汇编学习
笔记(三)——GCC内联汇编
之前每次看内联汇编都有一些地方看不明白,"=r","r","%0","%1"这些符号看不明白,本次总结一下这些内容吧,虽然很简单,但是手不能懒!首先,C语言中为什么要内联汇编以及其带来的好处这个我就不说了。C语言中使用汇编要通过函数asm(),即__asm__()的别名,两者是一样的。常见的内联汇编有下面两种形式:asm("movr0,r0\n\t""movr0,r0\n\t""movr0,r0\
beyond702
·
2020-07-15 20:03
ARM汇编
汇编学习
之找最大值
1.从键盘输入10个整数,并存放在内存中,求这10整数最大值,并在屏幕中输出最大值2.在内存存放有两组整数中,分别求两组整数最大值,并在屏幕中输出各自最大值1.IncludeIrvine32.inc.datamaxdd?.codemainPROCmovebx,0callreadintmovmax,eaxagain:cmpebx,8jafinalcallreadintcmpeax,maxjbnext
LINZHENYU1996
·
2020-07-15 17:01
汇编
物理内存映射 获取PTE
IA-32
的分页机制灰常给力的。弄几个函数玩注意里面的copyonwrite,很好玩的。
xDragonx_
·
2020-07-15 16:27
【CPU】关于x86、x86_64/x64、amd64和arm64/aarch64
x86是指intel的开发的一种32位指令集,从386开始时代开始的,一直沿用至今,是一种cisc指令集,所有intel早期的cpu,amd早期的cpu都支持这种指令集,intel官方文档里面称为“
IA
HunterMichaelG
·
2020-07-15 14:37
ARM
上一页
2
3
4
5
6
7
8
9
下一页
按字母分类:
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
其他