第五章movetest3.s例子

本文介绍如何在macOS系统中利用Terminal进行cc命令编译及运行一个简单的汇编语言程序。该程序加载一组预定义的整数,并依次输出这些数值。代码展示了从数据定义到输出的具体实现过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在macOS Terminal中输入

cc -arch i386 -Wl,-no_pie movetest3.s
./a.out

输出

The value is 10
The value is 15
The value is 20
The value is 25
The value is 30
The value is 35
The value is 40
The value is 45
The value is 50
The value is 55
The value is 60

代码如下

# cc -arch i386 -Wl,-no_pie movetest3.s

    .data
values:
    .long 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60

    .cstring
output:
    .asciz "The value is %d\n"

    .text
    .globl _main
    .p2align 2
_main:
    pushl %ebp

    movl $0, %edi
loop:
    movl values(,%edi,4), %eax
    pushl %eax
    pushl $output
    call _printf
    addl $8, %esp
    incl %edi
    cmpl $11, %edi
    jne loop

    xorl %eax, %eax
    popl %ebp
    retl
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值