如何在MacOS上玩儿汇编?
来源:互联网 发布:淘宝二类医疗器械申请 编辑:程序博客网 时间:2024/06/01 16:47
在Mac上写汇编还是相当方便的。本文通过写一个Helloworld程序来入门。
首先,MacOS 自带nasm,只是版本有点老,编译不了64位程序,只要上官网下一个最新的,替换一下就行了。
有一点需要注意的是mac上gcc编译.o文件的默认入口是_main,而使用ld命令的时候默认的事start.
下面创建helloworld.asm文件:
SECTION .data msg: db "hello world!", 0x0alen: equ $-msg SECTION .textglobal _main kernel: syscall ret _main: mov rax,0x2000004 mov rdi,1 mov rsi,msg mov rdx,len call kernel mov rax,0x2000001 mov rdi,0 call kernel
在终端运行以下语句
nasm -f macho64 -o helloworld.o helloworld.asmld -o helloworld -e _main helloworld.o./helloworld
阅读全文
0 0
- 如何在MacOS上玩儿汇编?
- 在MacOS上安装md5sum
- 在虚拟机上安装MacOS
- 在MacOS上安装md5sum
- 在MacOS上安装brew
- 在macOS上运行ImageMagick
- 在macos上安装icons
- 在macos上搭建istio
- 在macOS上安装Anaconda
- 如果在 macOS 10.12 上没有任何来源 应该如何操作?
- OSVersion 在 MONO MacOS 上的Bug?
- macos X在acer5572上的安装
- MySQL在MacOS上的安装记录
- Latexit在MacOS上进行公式编辑
- 在 Vmware 上安装 MacOS 10.9
- 【转】在MACOS上实现交叉编译
- 在macOS上用VirtualBox安装CentOS
- 在MacOs上配置Mesos+Zookeeper
- HDU 2.1.7
- Lintcode53 Reverse Words in a String solution 题解
- springboot-02thymeleaf注意
- StringBuffer,StringBuilder和String的区别
- Lintcode54 String to Integer II solution 题解
- 如何在MacOS上玩儿汇编?
- 设计模式之单例模式的介绍及C++实现
- 冒泡排序
- JavaScript经典案例
- Lintcode55 Compare Strings solution 题解
- kotlin在Android studio3.0上的配置问题
- java 创建多线程两种方法比较
- finalize的作用
- 仿QQ侧滑效果