yasm,nasm的关系
原文:https://www.cnblogs.com/findumars/p/4145407.html
留个爪,稍后学习
选择编译器
nasm?fasm?yasm?还是masm、gas或其他?
前面三个是免费开源的汇编编译器,总体上来讲都使用Intel的语法。yasm是在nasm的基础上开发的,与nasm同宗。由于使用了相同的语法,因此nasm的代码可以直接用yasm来编译。
yasm虽然更新较慢,但对nasm一些不合理的地方进行了改良。从这个角度来看,yasm比nasm更优秀些,而nasm更新快,能支持更新的指令集。在Windows平台上,fasm是另一个不错的选择,平台支持比较好,可以直接用来开发Windows上的程序,语法也比较独特。在对Windows程序结构的支持上,fasm是3个免费的编译器里做得最好的。
masm是微软发布的汇编编译器,现在已经停止单独发布,被融合在Visual Studio产品中。gas是Linux平台上的免费开源汇编编译器,使用AT&T的汇编语法,使用起来比较麻烦。
由于本书的例子是在祼机上直接运行,因此笔者使用nasm,因为它的语法比较简洁,使用方法简单,更新速度非常快。不过如果要是用nasm来写Windows程序则是比较痛苦的,这方面的文档很少。
从nasm的官网可以下载最新的版本:http://www.nasm.us/pub/nasm/releasebuilds/?C=M,也可以浏览和下载其文档:http://www.nasm.us/docs.php。
参考:
http://book.2cto.com/201209/5464.html
http://blog.csdn.net/broadview2006/article/details/8176974
http://blog.csdn.net/broadview2006/article/details/8181182
http://blog.csdn.net/broadview2006/article/details/8058755
编程ING:人人都能学会程序设计
http://blog.csdn.net/broadview2006/article/details/7789622
支撑处理器的技术——永无止境地追求速度的世界
http://blog.csdn.net/broadview2006/article/details/8174696
—————————————–
特别需要补充的两个开源软件是:FreeDOS,MiniGUI
yasm,nasm的关系相关推荐
- EasyNVR depends on ffmpeg,yasm/nasm not found or too old. Use --disable-yasm for a crippledbuild
安装ffmpeg过程中,执行./configure时,报yasm/nasm not found or too old. Use --disable-yasm for a crippledbuild错误 ...
- yasm/nasm not found or too old. Use --disable-yasm for a crippled build.
问题:使用./configure执行命令时报如下错误 yasm/nasm not found or too old. Use --disable-yasm for a crippled build. ...
- FFmpeg yasm/nasm not found or too old. Use --disable-yasm for a crippledbuild
ubuntu 编译FFmgeg执行./configure 时会报此错误. nasm/yasm not found or too old. Use --disable-x86asm for a crip ...
- FFmpeg[18] - mac解决yasm/nasm not found or too old. Use --disable-yasm for a crippled build.
目录 问题 原因 解决 <FFmpeg实用技巧>系列-总览_liuzhen007的专栏-CSDN博客前言FFmpeg是一个完整的跨平台解决方案,可用于音视频的录制.转码.流化处理等应用,号 ...
- 多媒体杂谈--有点乱后继整理
第1章. RTP 1.1. RTP是什么 RTP全名是Real-time Transport Protocol(实时传输协议).它是IETF提出的一个标准,对应的RFC文档为RFC3550 ...
- 如何开发一款 H5 小程序直播?
大前端这几年算是一个热词,对于前段来说如果不是大前端,技术相对来说就已经算是落后了.如果还停留在对ES6,Vue这些基本技能的学习只能说处于一个及格线. 如果想做的卓越必须必备另一些大前端技能,比如说 ...
- apache php ffmpeg,linux(php环境) 安装ffmpeg
实现上传视频获取视频的第一帧当做视频封面 1.安装ffmpeg 解压安装包 tar -jxvf ffmpeg-4.0.tar.bz2 //可能这一步会报错,如果报错是 yasm/nasm not f ...
- 编译mediastreamer2/ffmpeg/linphone(x86平台)
--------------------------在x86环境下编译mediastreamer2的步骤-------------------------------------- 1)编译OGG库 ...
- 安装FFmpeg后,发现没有生成ffplay的解决办法
首先在官网上下载最新的FFmpeg压缩包: http://ffmpeg.org/download.html 压缩包的格式是.tar.bz2,解压压缩文件,以ffmpeg-3.3.4为例,这里需要用到的 ...
- Linux下 FFmpeg 编译安装
FFmpeg是一套可以用来记录.转换数字音频.视频,并能将其转化为流的开源计算机程序. 官网:http://ffmpeg.org 一.FFmpeg安装 安装依赖包: yum install libth ...
最新文章
- 不要把OKR用成 KPI,OKR和KPI有什么区别?
- numpy使用[]语法索引二维numpy数组中指定指定行之前所有数据行的数值内容(accessing rows in numpy array before specifc row)
- AndroidStudio基础视频教程-整理
- 如何制作一个通用的多系统安装U盘七(Windows相关配置)
- XSSFWorkbook与HSSFWorkbook的区别
- VMware vCenter 资源池
- windows 下 LITE IDE go lang 安装配置使用
- 半导体物理实验MatLab,Matlab在固体物理中的应用程序.doc
- 考教师资格证需要买书吗?
- 微信开发工具报错:UNKNOWN ERROR:tunneling socket could not be established,cause=getaddrinfo ENOTFOUND socks
- 企业微信 ios 识别二维码 无法直接跳转 (安卓正常)
- 龙蜥社区技术委员会主席杨勇:下一代操作系统展望
- docker制作镜像
- libcurl入门之相关接口函数curl_easy_setopt
- Backtrader获得当前持仓详情——持仓数量与持仓的名称
- codeforces 794E Choosing Carrot
- 不重启容器的情况下添加或者删除端口
- 做外贸可以开海外店铺吗?可以开哪些平台?
- 用百行Python代码写一个关于德州扑克的类
- 几个开源的运维管理系统介绍