| 网站首页 | 文章中心 | 电子书下载 | 矢量图库 | 视频教程 | 素材下载 | 程序代码下载 | JS代码 | 论坛 | 
龙腾教程网  
常用软件类:
|杀毒安全 |联络聊天 |网络软件 |多媒体类 |系统工具 |图形图像 |系统工具 |应用软件 |行业软件
开发设计类:
|动画制作 |图像处理 |3D设计 |操作系统 |站长学院 |网络相关 |WEB设计 |数据库类 |程序开发
 
  您当前位置:您现在的位置: 龙腾软件教程网 >> 文章中心 >> 应用程序 >> 汇编教程 >> Linux 汇编语言开发指南 >> 文章正文>>>>>> 
Linux 汇编语言开发指南 六、命令行参数
 在 Linux 操作系统中,当一个可执行程序通过命令行启动时,其所需的参数将被保存到栈中:首先是 argc,然后是指向各个命令行参数的指针数组 argv,最后是指向环境变量的指针数据 envp。在编写汇编语言程序时,很多时候需要对这些参数进行处理,下面的代码示范了如何在汇编代码中进行命令行参数的处理:

  例3. 处理命令行参数

  

# args.s
.text
.globl _start
    
_start:
    popl  %ecx    # argc
vnext:
    popl  %ecx    # argv
    test   %ecx, %ecx   # 空指针表明结束
    jz  exit
    movl  %ecx, %ebx
    xorl  %edx, %edx
strlen:
    movb  (%ebx), %al
    inc  %edx
    inc  %ebx
    test  %al, %al
    jnz  strlen
    movb  $10, -1(%ebx)
    movl  $4, %eax    # 系统调用号(sys_write)
    movl  $1, %ebx    # 文件描述符(stdout)
    int  $0x80
    jmp  vnext
exit:
    movl  $1,%eax     # 系统调用号(sys_exit)
    xorl  %ebx, %ebx   # 退出代码
    int   $0x80
    
    ret


上一篇:
  • 上一篇文章:
  • 下一篇
  • 下一篇文章: 没有了
  • 收藏此文到百度搜藏 百度搜藏| 新浪VIvi| 365key| Younote| 博采中心| 你好BLOG| 亿友网摘| 和讯网摘|
    相关文章    
    Linux 汇编语言开发指南 五、系统调用
    Linux 汇编语言开发指南 四、Linux 汇编工具
    Linux 汇编语言开发指南 三、Hello World!
    Linux 汇编语言开发指南 二、Linux 汇编语法
    Linux 汇编语言开发指南 一、简介
    修复Linux操作系统的Root密码的几种方法
    Linux系统下网卡手写配置文件
    Linux下安装Apache与PHP的方法
    修复Linux系统Root密码技巧
    Linux下配置基于策略的路由
     
     
     
    最新文章
    普通文章 Linux 汇编语言开发指南 六、命令最新文章
    普通文章 Linux 汇编语言开发指南 五、系统最新文章
    普通文章 Linux 汇编语言开发指南 四、Lin最新文章
    普通文章 Linux 汇编语言开发指南 三、Hel最新文章
    普通文章 Linux 汇编语言开发指南 二、Lin最新文章
    普通文章 Linux 汇编语言开发指南 一、简介最新文章
    普通文章 3DSMAX制作三维迷宫最新文章
    普通文章 Fireworks制作网站动态banner教程最新文章
    普通文章 Fireworks绘制质感锁具图标最新文章
    普通文章 基于MySQL数据库的论坛设计方案最新文章
     
    热门文章
    推荐文章 CorelDraw 表格制作终极方案
    推荐文章 Photoshop鼠绘水墨风格的精美荷花
    推荐文章 Fireworks网页界面综合设计实例详
    推荐文章 Oracle数据库配置中的常见错误代
    推荐文章 最新迅雷下载电骡资源技巧放送
     
     
    设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明 

    版权所有2006-2008 龙腾教程网