• jcxz   有条件跳转指令,cx为跳转条件。如果(cx)==0则跳转到指定标号处。跳转地址在机器码中已相对位置(-128~127)给出。

相当于                if((cx)==0)

jump short 标号

用法: jcxz 标号

  • loop  循环指令,循环条件同样以cx给出,(cx)!=0时跳转到指定标号处,(cx)==0不跳转,继续执行下一条指令。

用法: loop   标号

例如:                       ……

s  ……

……

loop s

  • call 子程序调用指令。

用法:call 标号 

该指令执行以下两步操作:

1、将当前的IP或者CS和IP入栈

(sp)=(sp)-2

((ss)*16+(sp))=(IP)

2、转移到标号处

(IP)=(IP)+16位位移(-32768~32767)

call far ptr 标号

该指令执行以下三步操作:

1、push cs

2、push ip

3、jmp far ptr 标号

        call reg

        call word ptr cs:ip

        call dword ptr cs:ip

  • ret 指令执行与call指令相反的操作。

1、pop ip

2、pop cs

  • mul  乘法指令。该指令要求相乘的两个数要么都是8bit,要么都是16bit。且有一个乘数为al(8 bit)或ax(16 bit)。对于8bit数相乘结果保存在ax(16 bit)中,16bit数相乘结果的高位保存在dx低位保存在ax中。

格式: mul reg

mul [...]

例子      1、mul byte ptr ds:ip

2、mul word ptr [...]

  • abc  带进位的加法指令

例子         abc ax bx

ax=ax+bx+cf

8086cpu-intel汇编指令简介的更多相关文章

  1. 结合Intel Manual和libdasm学习汇编指令

    参考:http://www.intel.com/content/www/us/en/processors/architectures-software-developer-manuals.html h ...

  2. AT&T 和 Intel 汇编语法的主要区别

    转自AT&T 和 Intel 汇编语法的主要区别 作为一个爱折腾的大好青年,补番之余还要补一些 Linux 下的基础,比如 GDB 的正确使用方法.但无论是看 gdb 还是 gcc -S 里的 ...

  3. linux 下gcc生成intel汇编

    留作备忘: gcc -S -masm=intel xxxx.c 生成elf可执行文件: gcc -o xxx xxxx.s 反汇编 objdump xxx 补充: 在使用gcc 对C语言程序进行编译时 ...

  4. 【嵌入式开发】 ARM 汇编 (指令分类 | 伪指令 | 协处理器访问指令)

    作者 : 韩曙亮 博客地址 : http://blog.csdn.net/shulianghan/article/details/42408137 转载请著名出处 本博客相关文档下载 :  -- AR ...

  5. 基础汇编指令(16bit 32bit 64bit)

    (zz from http://blog.luoyuanhang.com/) ##常见寄存器 寄存器 16位 32位 64位 累加寄存器 accumulator AX EAX RAX 基址寄存器 ba ...

  6. 3.6 MIPS指令简介

    计算机组成 3 指令系统体系结构 3.6 MIPS指令简介 MIPS秉承着指令数量少,指令功能简单的设计理念.那这样的设计理念是如何实现的呢?在这一节,我们就将来分析MIPS指令的特点. 相比于X86 ...

  7. ARM体系结构和汇编指令

    第一节 可编程器件的编程原理 1. 可编程器件的特点 1 . CPU在固定频率的时钟控制下节奏运行 2 . CPU可以通过总线读取外部存储设备中的二进制指令集,然后解码执行 3 . 这些可以被CPU解 ...

  8. Intel call指令

    转载:http://blog.ftofficer.com/2010/04/n-forms-of-call-instructions/ 最近有一个需求,给你个地址,看看这个地址前面是不是一个CALL指令 ...

  9. GNU ARM 汇编指令

    第一部分 Linux下ARM汇编语法尽管在Linux下使用C或C++编写程序很方便,但汇编源程序用于系统最基本的初始化,如初始化堆栈指针.设置页表.操作 ARM的协处理器等.初始化完成后就可以跳转到C ...

随机推荐

  1. C++ 队列的实现

    /************************************************************************/ /* 实现一个通用同步队列 使用链表实现队列 (先 ...

  2. Microsoft Visual Studio has encountered a problem

    VS 2010 断点调试的时候,一运行到断点就报这个错误"Visual Studio has encountered a problem and needs to close", ...

  3. GNU/Linux复习笔记(2)

    ---IO重定向: 典型的冯诺依曼计算机由5大部件组成:运算器,控制器,存储器,输入设备和输出设备.而一台计算机上可能有很多输入设备和输出设备,键盘.麦克风是输入设备,显示器.声卡是输出设备,网卡.硬 ...

  4. 【练习】数据移动---导出(EXPDP)

    1.导出表: [oracle@host03 datadump]$ expdp scott/tiger directory=dir_dp dumpfile=emp.dmp tables=emp; Exp ...

  5. xmpp关于后台挂起的消息接收,后台消息推送,本地发送通知

    想问下,在xmpp即时通讯的项目中,我程序如果挂起了,后台有消息过来,我这边的推送不过来,所以我的通知就会收不到消息,当我重新唤醒应用的时候,他才会接收到通知,消息就会推送过来,我在plist哪里设置 ...

  6. linux shell 常用表达式汇总

    1. linux shell 逻辑运算符.逻辑表达式详解: http://www.cnblogs.com/chengmo/archive/2010/10/01/1839942.html

  7. Android test---SL4A

    这里有一个链接http://www.linuxidc.com/Linux/2014-02/96452.htm 详细教程

  8. [转]:Delphi中Format的字符串格式化使用说明

    一.Format函数的用法 Format是一个很常用,却又似乎很烦的方法,本人试图对这个方法的帮助进行一些翻译,让它有一个完整的概貌,以供大家查询之用: 首先看它的声明: function Forma ...

  9. 脚本工具: 查看当前系统被写入的FD

    #!/bin/bash touch /tmp/sn2 /tmp/sn4 /tmp/sn6 /tmp/sn3 redir=/dev/null which lsof >&/dev/null ...

  10. c#-基础:类的进阶

    类的概述: 类是一个能存储数据并执行代码的数据结构 数据成员:通常模拟该类所表示显示世界的事物特性 函数成员:执行代码.模拟显示世界事物的功能和操作 数据成员:字段,常量 函数成员执行代码:方法 运算 ...