汇编
文章平均质量分 80
汇编
Wireless_Link
有丰富的蓝牙车载经验,曾给HAVAL H6,F7,江淮,北汽,丰田,大众,江铃等众多车型做过蓝牙车载方案,对传统蓝牙,低功耗蓝牙都有深入的研究。
展开
-
汇编基础
本章概述:1. 汇编语言基本上是直接在硬件上工作的编程语言,需要了解硬件系统才能更好的应用汇编编程。2. 最终运行程序的是CPU,我们用汇编语言编程时,必须要从CPU的角度考虑问题。 一、 机器语言1. 机器语言是机器指令的集合,它是机器可以正确执行的命令,是一列二进制数字。CPU将之转变为原创 2016-07-15 22:19:03 · 681 阅读 · 0 评论 -
arm汇编总结---让汇编不再神秘
一.指令格式{}{S} {Rd}, {Rn}, {shifer_operand}: 指令操作符编码,如 LDR、STR 等。{}: 指令执行的条件编码,如 EQ、NE 等。{S}: 决定指令的执行是否影响 CPRS 的值。{Rd}: 目标寄存器编码。{Rn}: 包含第一个源操作数的寄存器编码。{{shifer_operand}: 第二个操作数以三星2440原创 2017-12-02 11:34:51 · 3174 阅读 · 1 评论 -
arm架构寄存器介绍
ARM处理器工作模式一共有 7 种 :USR 模式 正常用户模式,程序正常执行模式FIQ模式(Fast Interrupt Request) 处理快速中断,支持高速数据传送或通道处理IRQ模式 处理普通中断SVC模式(Supervisor) 操作系统保护模式,处理软件中断swi reset ABT 中止(Abort mode){数据、指令} 处理存储器故障原创 2017-12-02 11:25:51 · 4862 阅读 · 0 评论 -
8086 CPU 寄存器简介
8086 CPU 寄存器简介引子打算写几篇稍近底层或者说是基础的博文,浅要介绍或者说是回顾一些基础知识,自然,还是得从最基础的开始,那就从汇编语言开刀吧,从汇编语言开刀的话,我们必须还先要了解一些其他东西,像 CPU ,内存这些知识点还是理解深刻一点的比较好,所以这一篇博文就绕着 80x86 CPU 中寄存器的基础部分下手,至于其他的一些将会在后续的博文中介绍转载 2016-07-15 22:51:06 · 1148 阅读 · 0 评论 -
标志寄存器
第十一章 本章概述:1. CPU内部的寄存器中,有一种特殊的寄存器(对于不同的处理器,个数和结构都可能 不同)具有以下3种作用:1) 用来存储相关指令的某些执行结果2) 用来为CPU执行那个相关指令提供行为依据3) 用来控制CPU的相关工作方式2. 这种特殊的寄存器在8原创 2016-07-15 22:27:15 · 2343 阅读 · 0 评论 -
CALL和RET指令
第十章 本章概述:call和ret指令都是转移指令,它们都修改IP,或同时修改CS和IP。它们经常被共同用来实现子程序的设计。一、 ret和retf1. ret指令用栈中的数据,修改IP的内容,从而实现近转移。2. retf指令用栈中的数据,修改CS和IP的内容,从而实现远转移。3.原创 2016-07-15 22:26:03 · 1361 阅读 · 0 评论 -
转移指令的原理
第九章 本章概述:1. 可以修改IP,或同时修改CS和IP的指令统称为转移指令。概括地讲,转移指令就是可以控制CPU执行内存中某处代码的指令。2. 8086CPU的转移行为有以下几类1) 只修改IP时,称为段内转移,比如:jmp ax。2) 同时修改CS和IP时,称为段间转移,比如:jmp原创 2016-07-15 22:25:26 · 2087 阅读 · 0 评论 -
数据处理的两个基本问题
第八章 本章概述:1. 计算机是进行数据处理、运算的机器,那么有两个基本的问题就包含在其中:1) 处理的数据在什么地方?2) 要处理的数据有多长?这两个问题,在机器指令中必须给以明确或隐含的说明,否则计算机就无法工作。2. 我们定义的描述性符号:reg和sreg 。用reg表示一个寄存器,sreg表示一个段寄存器原创 2016-07-15 22:24:48 · 935 阅读 · 0 评论 -
更灵活的定位内存地址的方法
第七章 一、 and和or指令1. and指令:逻辑与指令,按位进行与运算2. or指令:逻辑或指令,按位进行或运算二、 关于ASCII码1. 计算机中,所有的信息都是二进制,而人能理解的信息是已经具有约定意义的字符。而我们要把这些信息存储在计算机中,就要对其进行编码,将其转化为二进制信息进行存原创 2016-07-15 22:24:10 · 1029 阅读 · 0 评论 -
包含多个段的程序
第六章 本章概述:1. 在操作系统的环境中,合法地通过操作系统取得的空间都是安全的,因为操作系统不会让一个程序所用的空间和其他程序以及系统自己的空间相冲突。在操作系统允许的情况下,程序可以取得任意容量的空间。2. 程序取得所需空间的方法有两种,一是在加载程序的时候为程序分配,再就是程序在执行的过程中向系统申请。3. 若原创 2016-07-15 22:23:07 · 1272 阅读 · 0 评论 -
[BX]和loop指令
第五章 本章概述:1. 这里将使用一个描述性的符号“( )”来表示一个寄存器或一个内存单元中的内容。“( )”中的元素可以有3种类型:寄存器名、段寄存器名、内存单元的物理地址(一个20位数据)。如:(ax)、(ds)、(al)、(cx)、(20000H)、((ds)*16 + (bx))都是正确的,(2000:0),((ds):1000H)是错误的2原创 2016-07-15 22:22:17 · 1944 阅读 · 0 评论 -
第一个程序
第四章 一、 一个源程序从写出到执行的过程1. 一个汇编程序从写出到最终执行的简要过程:1) 编写汇编源程序2) 对源程序进行编译连接3) 执行可执行文件中的程序2. 可执行文件包含的内容1) 程序(从源程序中的汇编指令翻译过来的机原创 2016-07-15 22:21:29 · 731 阅读 · 0 评论 -
寄存器(内存访问)
第三章 一、 内存中字的存储1. 8086CPU中,用16位寄存器来存储一个字。高8位存放高位字节,低8位存放低位字节。2. 在内存中存储时,由于内存单元是字节单元(一个单元存放一个字节),则一个字要用两个地址连续的内存单元来存放,这个字的低位字节存放在低地址单元中,高位字节存放在高地址单元中。3.原创 2016-07-15 22:20:44 · 1496 阅读 · 0 评论 -
寄存器(CPU里面的内存,CPU里面的存储器)
第二章 本章概述:1. 一个典型的CPU有运算器、控制器、寄存器等器件构成,这些器件靠内部总线相连。2. 前一章所说的总线,相对于CPU内部总线来说是外部总线。内部总线实现CPU内部各个器件之间的联系,外部总线实现CPU和主板上其他器件的联系。3. 简单地说,在CPU中,运算器进行信息处理、寄存器进行信息存储、控制器控制各种原创 2016-07-15 22:19:49 · 5825 阅读 · 0 评论 -
ARM-CP15寄存器组介绍(开启I/D catch,MMU都需要此寄存器)
访问CP15寄存器指令的编码格式及语法说明如下: 31 28 27 24 23 21 20 19 16 15 12 11 8 7 5 4 3 0 cond 1 1 1 0 opcode_1 L cr n rd 1 1 1 1 opcode_2 1 crm 说明::协处理器行为操作码,对于CP15来说,永远为0b000,否则结果未知。:不转载 2017-12-07 16:54:07 · 2778 阅读 · 0 评论