【版权声明:尊重原创,转载请保留出处:blog.csdn.net/shallnet,文章仅供学习交流,请勿用于商业用途】
这一节介绍如何在编语言中上使用整数运算,包括加法、减法、乘法和除法。
加法指令
add指令用于把两个整数想加。格式如下:
add src, dest
其中src可以是立即数值、内存地址、寄存器。dest可以是寄存器或内存...
分类:
系统相关 时间:
2015-05-09 16:33:54
阅读次数:
197
【版权声明:尊重原创,转载请保留出处:blog.csdn.net/shallnet,文章仅供学习交流,请勿用于商业用途】
在此之前我们使用的汇编代码示例都是从第一条指令开始,直到最后最后一条指令程序退出。但实际上和高级语言类似,汇编代码也提供指令来改变程序处理数据方式。
正常情况下,程序要执行要执行的下一条指令是在指令指针寄存器中,指令指针确定程序中...
分类:
系统相关 时间:
2015-05-09 16:32:58
阅读次数:
319
【版权声明:尊重原创,转载请保留出处:blog.csdn.net/shallnet,文章仅供学习交流,请勿用于商业用途】
在高级语言中,我们经常操作字符串,比如字符串拷贝、比较、查找等。在汇编语言中也有实现这些操作的命令。这一节讲述在汇编语言中字符串传送相关操作命令。
movs指令可以把字符串从一个内存位置传送到另一个内存位置,指令后面跟表示长度的字符:...
分类:
系统相关 时间:
2015-05-09 16:32:04
阅读次数:
166
【版权声明:尊重原创,转载请保留出处:blog.csdn.net/shallnet,文章仅供学习交流,请勿用于商业用途】
字符串的存储与加载是指,将字符串的值加载到寄存器和将其传回内存位置中。其使用指令lods指令和stos指令。
lods指令用于把内存中的字符串值传送到eax寄存器中,该指令有三种不同格式:lodsb(1字节)、lodsw(2字节)、lod...
分类:
系统相关 时间:
2015-05-09 16:32:00
阅读次数:
230
【版权声明:尊重原创,转载请保留出处:blog.csdn.net/shallnet,文章仅供学习交流,请勿用于商业用途】
循环也是改变指令执行顺序的一种方式,循环操作重复的执行,直到满足条件。我们可以使用条件跳转指令来创建循环,但事实上汇编语言中有更简单的循环指令系列。
循环指令使用ECX寄存器作为计数器,随着循环指令的执行自动递减它的值,并且不会影...
分类:
系统相关 时间:
2015-05-09 16:31:18
阅读次数:
185
【版权声明:尊重原创,转载请保留出处:blog.csdn.net/shallnet,文章仅供学习交流,请勿用于商业用途】
正如C语言一样,编写所有语言程序一样会出现一些一些错误,发生错误时,我们可以使用调试器一步一步运行程序以监视数据是如何被处理的。本节使用GNU调试器检查上一节hello程序,监视处理过程中寄存器和内存的值的变化。要调试汇编语言程序,在编译时,需要使用-gs...
分类:
数据库 时间:
2015-05-09 01:25:54
阅读次数:
193
【版权声明:尊重原创,转载请保留出处:blog.csdn.net/shallnet,文章仅供学习交流,请勿用于商业用途】
前面讲了定义数据元素,既然定义了数据元素,那么就需要知道如何处理这些数据元素。数据元素位于内存中,并且处理器很多指令要使用寄存器,所以处理数据元素的第一个步骤就是在内存和寄存器之间传送它们。数据传送指令为mov,其为汇编语言中最常用的指令之一。...
分类:
系统相关 时间:
2015-05-09 01:24:49
阅读次数:
155
堆栈是内存中用于存放数据的专门保留的区域,该区域的数据存放和删除方式比较特殊。一般内存区域数据元素按照连续的方式存放到数据段,在数据段中最低内存开始存放,然后向更高的内存位置依次存放。而堆栈保留在内存区域的末尾位置,并且在当数据存放在堆栈中时,它向下增长。程序运行时使用的任何命令行参数都被送入堆栈中,并且堆栈指针被设置为指向数据元素的底部。
当每个数据被添加到堆栈数据区域中时,使...
分类:
系统相关 时间:
2015-05-09 01:23:00
阅读次数:
218
【版权声明:尊重原创,转载请保留出处:blog.csdn.net/shallnet,文章仅供学习交流,请勿用于商业用途】
在计算机操作的最底层,所有计算机处理器都按照制造厂商在处理器内部定义的二进制代码来操作数据,这些代码定义了处理器应该利用程序员提供的数据完成相应的功能,这些预置的代码被称为指令码。不同类型的处理器的指令码是不一样的,但处理指令码的方式是类似的。...
分类:
系统相关 时间:
2015-05-07 00:59:19
阅读次数:
219
【版权声明:尊重原创,转载请保留出处:blog.csdn.net/shallnet,文章仅供学习交流,请勿用于商业用途】
现代计算机计算过程通常是把用户书写并送入计算机内的高级语言程序翻译成机器能识别的语言程序,再通过机器自动运行该语言程序计算出结果并输出。
但在早期没有高级语言的时候,用户是直接编写机器语言,直接在机器执行。向编写这种只由0、1...
分类:
系统相关 时间:
2015-05-07 00:57:40
阅读次数:
243