当前位置:  技术问答>linux和unix

c内嵌汇编问题,超级初级,大家帮忙

    来源: 互联网  发布时间:2016-11-04

    本文导语:  void main() { __asm__("          jmp forward backward:          popl %esi # Get the address of                            # hello world string          movl $4, %eax # Do write system call          movl ...

void main()
{
__asm__("
         jmp forward
backward:
         popl %esi # Get the address of 
                          # hello world string
         movl $4, %eax # Do write system call
         movl $2, %ebx
         movl %esi, %ecx
         movl $12, %edx
         int $0x80
         int3 # Breakpoint. Here the 
                          # program will stop and 
                          # give control back to 
                          # the parent
forward:
         call backward
         .string "Hello Worldn""
       );
}
使用 gcc –o hello hello.c来编译它


但是编译不过,提示双引号没匹配,哪位同学熟悉c嵌入汇编,帮着看看,谢谢

|
我编译运行过了,下面修改过的代码是可以的,内联汇编有要求:
1.指令必须包括在引号里。
2.如果包含的指令超过一条,那么必须使用新行字符分割汇编语言代码的每一行。通常,还包含制表符帮助缩进汇编语言代码,使代码更容易阅读。
需要第二个规格是因为编译器逐字的取得asm段中的汇编代码,并且把他们放在为程序生成的汇编代码中。每条汇编语言指令都必须在单独的一行中--因此需要包含新行字符。

void main()
{
__asm__(
"jmp forwardnt"
"backward:nt"
"popl %esint"
"movl $4, %eaxnt"
"movl $2, %ebxnt"
"movl %esi, %ecxnt"
"movl $12, %edxnt"
"int $0x80nt"
"int3nt"
"forward:nt"
"call backwardnt"
".string "Hello World"nt"
       );
}


    
 
 

您可能感兴趣的文章:

  • 帮忙解释下这几句汇编代码,各位大虾
  • 哪位帮忙把这个汇编宏,解析一下?
  • Linux汇编代码...各位帮帮忙
  • 关于汇编跳转到elf文件问题,忙了一个下午都弄不好,大家帮帮忙啊
  • 请教一个函数入口处的汇编问题(压栈问题)
  • 内嵌汇编的问题
  • 汇编的一个简单问题
  • 一个关于汇编的简单问题
  • 100分请教高手一个Linux内核ARM汇编的问题
  • 问一个liunx汇编问题
  • linux驱动中嵌入ARM汇编访问内存的问题
  • 请教,AT&T格式汇编问题。
  • 请教一个 AT&T 汇编问题
  • 老问题,C/汇编混合编程,使用Nasm与gcc,生成Raw Binary目标格式,系统程序员高手请进!!!
  • 一个GCC内联汇编程序问题
  • AT&T汇编 Linux保护模式编程问题
  • 有懂汇编的吗?很菜的问题!
  • 请教高人:AT&T汇编语言中把.byte .word .long的问题?
  • 求助关于AT&T汇编问题,在线等ing,急呀
  • 哪位高手帮我看看这个linux下汇编程序的调试问题,谢谢。
  • nasm汇编调用C函数的问题
  • 求助,关于vim编写汇编程序遇到的问题
  • 汇编调用fork的问题
  • 一个汇编的问题
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • linux下objdump命令用法介绍及如何使用objdump命令进行反汇编
  • linux中所用的汇编怎么和我们学的汇编不一样?
  • linux内核源代码中的汇编部分与其他汇编有不同的地方吗?
  • 有没有at@t汇编格式和intel 汇编格式互相转换的工具啊!
  • 请问有没有用AT&T汇编语法讲汇编语言的书?
  • gcc和objdump能生成Intel汇编吗?AT&T格式汇编看着不太习惯
  • 请教,X86汇编转AT&T汇编,急急
  • ARM汇编中的里的SUBS,后面的S是什么意思?顺便求本汇编的好书。
  • 如何将ARM汇编代码变成GNU汇编?
  • 高分求助:linux内核中的汇编语言和Dos或windows下的汇编是一样的吗,有这方面的书或资料可供学习吗,分不够可再加,决不食言
  • 强力推荐一本LINUX下汇编(即AT&T汇编)的新书
  • 请问一下,汇编器as是否就是gas?
  • 请问各位大虾,如何在linux环境下学习汇编?
  • GCC内联汇编如何调试
  • LINUX下的汇编 怎么看????高手指导语法
  • 请问汇编器和编译器各自完成那些功能啊?
  • 想学汇编
  • 编译、汇编、连接分别指代什么?
  • 关于gcc的汇编
  • linux汇编
  • 关于汇编


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3