当前位置: 首页 > news >正文

as 汇编入门, hello world 显示

/* as 汇编入门, hello world 显示
操作数方向     从左向右     
立即数表示方式     $     
寄存器表示方式     %     
助记符指定操作数长度     b8位,w16位,l32位, movl $0, %eax
长跳转和调用     ljmp $sect, $off
内存单元     圆括号 mov 5(%ebx), %eax
间接寻址方式     %seg:disp(base,index,scale)
*/
//注释     单行用 # 或 // 多行用 /* ... */
// 代码如下: 建议背过
.data                    # .data 段
msg:
    .string        "hello, workd!\n"    # 定义一个字符串
    len = . - msg        # 字符长度

.text                    # .text 段
.global _start            #声明全局符号

_start:                    # 标号
    movl $len, %edx        # 参数3, 字符串长度
    movl $msg, %ecx     # 参数2, 要显示的字符串地址
    movl $1, %ebx        # 参数1, 文件描述符(stdout)
    movl $4, %eax        # 系统调用 (sys_write)
    int $0x80

    movl $0,%ebx
    movl $1,%eax        # 系统调用 (sys_exit)
    int $0x80


/*
编译: as 1.s -o 1.o
连接: ld 1.o -o 1
执行: ./1
*/

相关文章:

  • 南京高端网站建设工作室/百度关键词首页排名服务
  • 做个网站跳转链接怎么做/百度旗下推广平台有哪些
  • 南通网站建设入门/网站优化排名哪家性价比高
  • wordpress提交友情链接/优化关键词排名
  • 网站建设css/广东疫情防控措施
  • 网站建设续费合同/最佳磁力引擎吧
  • 【java】opencv + Tesseract(tess4j) 实现图片处理验证码识别
  • GAMES101 Assignment 3
  • 小学生C++编程基础 课程8(A)
  • 前沿系列--Transform架构[架构分析+代码实现]
  • 力扣(15.18)补9.19
  • Linux sed命令如何使用?有哪些作用?
  • Linux 常用命令总结
  • IU酒店打造齐鲁文化旅游发展新高地
  • 多级缓存架构设计
  • nginx架构解析:朴实中见真知
  • 算法训练第五十七天 | LeetCode 647、516动态规划结尾
  • APM32F103 RTC内部时钟源报警中断例程测试