汇编 您所在的位置:网站首页 汇编语言loop的用法 汇编

汇编

2024-05-02 19:10| 来源: 网络整理| 查看: 265

❮ 上一节 下一节 ❯ 汇编 - 循环

JMP指令可用于实现循环。 例如,以下代码片段可用于执行循环体 10 次。

MOV CL, 10 L1: DEC CL JNZ L1

然而,处理器指令集包括一组用于实现迭代的循环指令。 基本的LOOP指令具有以下语法 −

LOOP label

其中,label是目标标签,用于标识跳转指令中的目标指令。 LOOP 指令假定ECX 寄存器包含循环计数。 当执行循环指令时,ECX寄存器递减,控制跳转到目标标号,直到ECX寄存器值,即计数器达到零值。

上面的代码片段可以写成 −

mov ECX,10 l1: loop l1 示例

以下程序在屏幕上打印数字 1 到 9 −

section .text global _start ;must be declared for using gcc _start: ;tell linker entry point mov ecx,10 mov eax, '1' l1: mov [num], eax mov eax, 4 mov ebx, 1 push ecx mov ecx, num mov edx, 1 int 0x80 mov eax, [num] sub eax, '0' inc eax add eax, '0' pop ecx loop l1 mov eax,1 ;system call number (sys_exit) int 0x80 ;call kernel section .bss num resb 1

当上面的代码被编译并执行时,会产生以下结果 −

123456789: ❮ 上一节 下一节 ❯


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有