原文: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的关系相关推荐

  1. 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错误 ...

  2. 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. ...

  3. 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 ...

  4. FFmpeg[18] - mac解决yasm/nasm not found or too old. Use --disable-yasm for a crippled build.

    目录 问题 原因 解决 <FFmpeg实用技巧>系列-总览_liuzhen007的专栏-CSDN博客前言FFmpeg是一个完整的跨平台解决方案,可用于音视频的录制.转码.流化处理等应用,号 ...

  5. 多媒体杂谈--有点乱后继整理

    第1章.     RTP  1.1.  RTP是什么 RTP全名是Real-time Transport Protocol(实时传输协议).它是IETF提出的一个标准,对应的RFC文档为RFC3550 ...

  6. 如何开发一款 H5 小程序直播?

    大前端这几年算是一个热词,对于前段来说如果不是大前端,技术相对来说就已经算是落后了.如果还停留在对ES6,Vue这些基本技能的学习只能说处于一个及格线. 如果想做的卓越必须必备另一些大前端技能,比如说 ...

  7. apache php ffmpeg,linux(php环境) 安装ffmpeg

    实现上传视频获取视频的第一帧当做视频封面 1.安装ffmpeg 解压安装包 tar -jxvf ffmpeg-4.0.tar.bz2 //可能这一步会报错,如果报错是  yasm/nasm not f ...

  8. 编译mediastreamer2/ffmpeg/linphone(x86平台)

    --------------------------在x86环境下编译mediastreamer2的步骤-------------------------------------- 1)编译OGG库 ...

  9. 安装FFmpeg后,发现没有生成ffplay的解决办法

    首先在官网上下载最新的FFmpeg压缩包: http://ffmpeg.org/download.html 压缩包的格式是.tar.bz2,解压压缩文件,以ffmpeg-3.3.4为例,这里需要用到的 ...

  10. Linux下 FFmpeg 编译安装

    FFmpeg是一套可以用来记录.转换数字音频.视频,并能将其转化为流的开源计算机程序. 官网:http://ffmpeg.org 一.FFmpeg安装 安装依赖包: yum install libth ...

最新文章

  1. 不要把OKR用成 KPI,OKR和KPI有什么区别?
  2. numpy使用[]语法索引二维numpy数组中指定指定行之前所有数据行的数值内容(accessing rows in numpy array before specifc row)
  3. AndroidStudio基础视频教程-整理
  4. 如何制作一个通用的多系统安装U盘七(Windows相关配置)
  5. XSSFWorkbook与HSSFWorkbook的区别
  6. VMware vCenter 资源池
  7. windows 下 LITE IDE go lang 安装配置使用
  8. 半导体物理实验MatLab,Matlab在固体物理中的应用程序.doc
  9. 考教师资格证需要买书吗?
  10. 微信开发工具报错:UNKNOWN ERROR:tunneling socket could not be established,cause=getaddrinfo ENOTFOUND socks
  11. 企业微信 ios 识别二维码 无法直接跳转 (安卓正常)
  12. 龙蜥社区技术委员会主席杨勇:下一代操作系统展望
  13. docker制作镜像
  14. libcurl入门之相关接口函数curl_easy_setopt
  15. Backtrader获得当前持仓详情——持仓数量与持仓的名称
  16. codeforces 794E Choosing Carrot
  17. 不重启容器的情况下添加或者删除端口
  18. 做外贸可以开海外店铺吗?可以开哪些平台?
  19. 用百行Python代码写一个关于德州扑克的类
  20. 几个开源的运维管理系统介绍

热门文章

  1. (动态示例)制作chm离线手册文件-w3school为例
  2. java幸运抽奖项目
  3. Js拼接Json供echarts的地图使用
  4. spring框架学习(一)
  5. 【论文笔记】Exploring Self-attention for Image Recognition
  6. Hashmap红黑树源码学习
  7. 教你查看网页的记住密码和免费下载付费音乐
  8. 56个民族HTML代码
  9. 计算机的发展是小报,电脑小报作品展示评价与交流.ppt
  10. 论文引用:参考文献GB/T 7714、APA、MLA的自动生成