汇编编程笔记--转移与循环指令
来源:互联网 发布:aape淘宝正品店 编辑:程序博客网 时间:2024/04/27 16:21
一.jmp指令
>>>>> 注:
1.标记名称(traget)的命名,不可以用保留字.
2.标记名称所在地址,可以依据程序流程的需要可以放在任何地方,也即转移指令可以往前移,
3.依据所转移的距离(所谓距离是指界于jmp至标记名所有指令的机器码的总和),本指令
>>>>下面是个无条件转移指令综合范例:<<<<<<
/////////////////////////////////////////////////////////////////////
二.
(1)指令格式: cmp 想比较的对象,跟谁比(根据内容)
下面用例子说明:
1)所谓指定的对象可以是8bit或16bit寄存器或内存变量,但比较的变量长度必须
2)想比较的内容,可用寄存器或内存变量还可以用立即值.
3)比较的对方不可同时用内存变量,且系统默认内存变量所在的地址为数据段(ds),
4)比较指令的执行可用如下面的演算来说明:
/////////////////////////////////////////////////////////////////////////
三.
(1)指令格式: j... 标记名(短距离short)
(2)指令意义: jump if...:有条件转移指令.根据接于j后面的条件是否与标记值
(3)j后面条件详表如下:
=================================================================
====================================================================
说明:
可以用于汇编语言,只不过使用上二者稍有不同,高级语言是一气呵成,(c中-if(xxx))
一行指令解决,汇编语言不同必须考虑下面二件事;
a.-为参与运算的二数其正负问题.
b.-为运算后二数是否容许改变,因此考虑不同使用的指令也就不同,而二数想产生大于,
下面写个有条件转移综合范例:
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
四. LOOP指令
(1)指令格式: LOOP 标记名(短距离short)
(2)指令意义: 循环指令,执行循环前先将想执行的次数放到cx寄存器内每执行循环
(3)如下:
Lab1:
1.标记名称(traget)的命名,不可以用保留字.
2.标记名称所在位置一定要在loop指令之前(既只能往前移动),且从标记到loop指令
3.计数值是放在cx寄存器内,因cx是16bit的,因此循环最多可执行65535次数(如果
4.从指令格式可知,循环内的指令最少把执行一次,且计数的初值必须在循环之外.
5.指令和c语言的for(x;x;x)有点相似,只是c是初值和终值,step三个来控制执
/////////////////////////////////////////////////////////////////
五:
(1)指令格式: LOOPE/LOOPZ 标记名(短距离short)
(2)指令意义: LOOP if Equal或LOOP if zero有条件循环指令(必须配合cmp使用!),
所指定的二数是否相等,如果cx不为0,且二数是相等,则继续执行循环,若cx=0或者二
数是不相等,则结束循环的执行.
(3)如下:
Lab1:
4)和c语言中的do...while用法相似.
/////////////////////////////////////////////////////////////////
五:
(1)指令格式: LOOPNE/LOOPNZ 标记名(短距离short)
(2)指令意义: LOOP if No Equal或LOOP if No zero有条件循环指令(必须配合
(3)如下:
Lab1:
(4)下面用有关显示加法口决表综合用法;
好了就说到这里了 ,希望这些给你带来帮助,win32的汇编程序这个方面我以后再写。
- 汇编编程笔记--转移与循环指令
- 8086汇编学习笔记8-转移指令
- 汇编学习笔记--转移指令的原理
- 8086汇编笔记(转移指令原理)
- 汇编学习笔记----转移指令及子程序原理
- 汇编入门学习笔记 (八)—— 转移指令
- [汇编学习笔记][第九章转移指令的原理]
- 汇编学习--7.13--转移指令
- 汇编中的条件转移指令
- 汇编转移指令的原理
- [Intel汇编-MASM]转移指令
- 汇编转移指令jmp原理
- 汇编指令——转移指令
- 【汇编】JMP跳转指令的指令长度、直接转移与间接转移、段内跳转与段间跳转
- 【汇编】算符与伪指令笔记
- 一步步学汇编(八)转移指令
- [汇编]8086指令系统---控制转移指令
- 条件转移指令表格经典收藏(汇编)
- 回味经典——uboot1.1.6 之 第一阶段
- 淘宝省市区获取
- coreseek配置及使用
- 一文让你彻底了解iOS字体相关知识
- 剑指offer52--找到二叉树下一个结点
- 汇编编程笔记--转移与循环指令
- DWR实现消息推送
- java学习总结()16.07.28)java的IO流
- Base64笔记
- Linux From Scratch 7.7 玩转记录
- python和apache在windows环境下的配置
- 对Extjs中store的多种操作
- Python面试题
- poj2686(Traveling by Stagecoach)状态压缩dp+DAG