1.伪指令由谁来执行?伪指令是由编译器来执行的指令,编译器根据伪指令来进行相关的编译工作2.程序:源程序中最终由计算机执行、处理的指令或数据3.我们可以将源程序文件中的所有内容称为源程序,将源程序中最终由计算机执行处理的指令或数据称为程序。程序最先以汇编指令的形式存在源程序中,经编译、连接后转变为机...
分类:
编程语言 时间:
2014-11-30 18:39:03
阅读次数:
165
在讨论什么是立即数,为什么有立即数,如何快速判断立即数之前,我们先来弄明白一个问题:什么不是立即数。汇编指令是对数据(指令、数据)对象的操作,很关键的一个问题我们如何寻找我们的操作对象?汇编指令是一门关于寻址的艺术。而opcode2只有12位,也就是说opcode2所表示的立即数有一定限制0-4095,为了进一步扩大12bit数据所能表示数的范围,ARM规定了数据的格式:...
分类:
其他好文 时间:
2014-11-30 14:14:00
阅读次数:
1174
大多数情况,操作系统内核用纯C语言是写不了的,因为有些关键功能,重要代码段,还是得用汇编指令干上一把才行,
本书不会过于详细的介绍ARM920T处理器所有的指令以及每条指令所有的详细使用方式。因为,一、篇幅所限,二、本书不是介绍某一特定处理器的指令集的专著。但是也不用害怕,笔者会尽量做到写操作系统内核时足够使用。...
分类:
其他好文 时间:
2014-11-20 12:03:13
阅读次数:
144
今天第一次在电脑上运行汇编程序分享一下我的收获
一个asm文件的编译 连接到运行过程:
首先用记事本写一个程序然后保存文件文件名为xx.asm
然后通过cmd下找到msam.exe程序直接打开
然后输入xx.asm 前面记好了需要输入路径
然后一直回车这样就编译成了obj文件
然后link 这个文件名
就连接成了exe
然后输入debug xx.exe
输入-r找到cs寄存器的...
分类:
其他好文 时间:
2014-11-17 12:22:49
阅读次数:
166
ARM处理器的指令集可以分为跳转指令、数据处理指令、程序状态寄存器(PSR)处理指令、加载/存储指令、协处理器指令和异常产生指令6大指令。一、跳转指令跳转指令用于实现程序流程的跳转,在ARM程序中有以下两种方法可以实现程序流程的跳转。Ⅰ.使用专门的跳转指令;Ⅱ.直接向程序计数器PC写入跳转地址值,通...
分类:
其他好文 时间:
2014-11-17 11:58:56
阅读次数:
209
C 源码: 1 void fun(char *ch){ 2 switch(*ch){ 3 case '-': 4 *ch = __LINE__; break; 5 case '0': 6 *ch = __LINE__; break;...
分类:
其他好文 时间:
2014-11-08 11:44:33
阅读次数:
254
题意:二进制指令转汇编指令,汇编指令转二进制指令。思路:额,条理分好,想全,思维不能乱。代码:int findyu(char yu[50],char c){ int l=strlen(yu); rep(i,0,l-1) if(c==yu[i]) return i;}int calc(ch...
分类:
其他好文 时间:
2014-11-05 22:51:37
阅读次数:
201
PowerPC 体系结构规范(PowerPC Architecture Specification)发布于 1993 年,它是一个 64位规范 ( 也包含 32 位子集 )。几乎所有常规可用的 PowerPC(除了新型号 IBM
RS/6000 和所有IBM pSeries 高端服务器)都是 32 位的。
PowerPC 处理器有 32 个(32 位或 64 位)GPR(通用寄存器)以及诸如...
分类:
其他好文 时间:
2014-11-03 19:23:31
阅读次数:
1618
接上文: http://blog.csdn.net/prsniper/article/details/40652451
上文中提到的局部变量的地址,第一个是[ebp-4],由于32位内存对齐的原因,第二个是[ebp-8],对于VC7以上的版本,这个地址可能会不一样
比如第一个可能是[ebp-8],第二个飞到[ebp-14],这是VS.NET的VC编译器在每个局部变量前后都加一个DW...
分类:
编程语言 时间:
2014-10-31 15:44:10
阅读次数:
293
1.mov 指令
mov 寄存器,数据
mov...
分类:
其他好文 时间:
2014-10-30 19:15:03
阅读次数:
396