汇编语言Nasmide编辑软件

news2025/1/22 9:08:39

用来编写汇编语言源程序,Windows 记事本并不是一个好工具。同时,在命令行编译源程序也令很多人迷糊。毕竟,很多年轻的朋友都是用着 Windows 成长起来的,他们缺少在 DOS和
UNIX 下工作的经历。

我一直想找一个自己中意的汇编语言编辑软件。互联网是个大宝库,上面有很多这样的工具软件,但大多都包含了太多的功能,用起来自然也很复杂。我的愿望很简单,能够方便地书写汇编指令即可,同时还具有编译功能。毕竟我自己也不喜欢在命令行和图形用户界面之间来回切换。

下载地址

链接:https://pan.baidu.com/s/1zB9r5WwuTMIPNMlYl5HlvA 
提取码:5ndl

现在,你可以双击 nasmideexe 来运行它。启动之后,如图所示,Nasmide 的软件界面分为三个部分。顶端是菜单,可以用来新建文件、打开文件、保存文件或者调用 NASM 来编译当前文档。

在这里插入图片描述

中间最大的空白区域是编辑区,用来书写汇编语言源代码。
窗口底部那个窄的区域是消息显示区。在编译当前文档时,不管是编译成功,还是发现了文档中的错误,都会显示在这里。
基本上,你现在已经可以在 Nasmide 里书写汇编语句了。不过,在此之前你最好先做一件事情。Nasmide 只是一个文本编辑工具,它自己没有编译能力。不过,它可以在后台调用 NASM 来编译当前文档,前提是它必须知道 NASM 安装在什么地方。
为此,你需要在菜单上选择“选项”-“编境”来打开如图所的对话框
在这里插入图片描述

这个路径就是你在前面安装 NASM 时,指定的安装路径,包括可执行文件名nasm.exe。
不同于其他汇编语言编译器,NASM 最让我喜欢的一个特点是允许在源程序中只包含指令,如图 3-5 所示。用过微软公司 MASM 的人都知道,在真正开始书写汇编指前,先要穿靴戴帽,在源程序中定义很多东西,比如代码段和数据段等,弄了半天,实际上连一条指令还没开始写呢。
在这里插入图片描述

用 Nasmide 程序编源程序时,它会自动在每一行容的左边显示行号。对于初学者来说,一开始可能会误以为行号也会出现在源程序中。不要误会,行号并非源程序的一部分,当保存源程序的时候,也不会出现在文件内容中。
让 Nasmide 显示行号,这是一个聪明的决定。一方面,我在书中讲解源程序时,可以说第几行到第几行是做什么用的;另一方面,当编译源程序的时候,如果发现了错误,错误信息中也会说明是第几行有错。这样,因为 Nasmide 显示了行号,这就很容易快速找到出错的那一行。
在汇编源程序中,可以为每一行添加注释。注释的作用是说明某条指令或者某个符号的含义和作用。注释也是源程序的组成部分,但在编译的时候会被编译器忽略。如图所示,为了诉编译器注释是从哪里开始的,注释需要以英文字母的分号“,”开始。
当源程序书写完毕之后,就可以进行编译了,方法是在 Nasmide 中选择菜单“文件”-“编译本文档”。这时,Nasmide 将会在后台调用 NASM 来完成整个编译过程,不需要你额外操心。如图所示,即使只有三行的程序也能通过编译。编译完成后,会在窗口底部显示一条消息。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/996626.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

无涯教程-JavaScript - CUMPRINC函数

描述 CUMPRINC函数返回start_period和end_period之间的贷款累计本金。 语法 CUMPRINC (rate, nper, pv, start_period, end_period, type)争论 Argument描述Required/OptionalRateThe interest rate.RequiredNperThe total number of payment periods.RequiredPvThe presen…

多输入多输出 | MATLAB实现CNN-LSTM-Attention卷积神经网络-长短期记忆网络结合SE注意力机制的多输入多输出预测

多输入多输出 | MATLAB实现CNN-LSTM-Attention卷积神经网络-长短期记忆网络结合SE注意力机制的多输入多输出预测 目录 多输入多输出 | MATLAB实现CNN-LSTM-Attention卷积神经网络-长短期记忆网络结合SE注意力机制的多输入多输出预测预测效果基本介绍程序设计往期精彩参考资料 预…

分享一个基于python的个性推荐餐厅系统源码 餐厅管理系统代码

💕💕作者:计算机源码社 💕💕个人简介:本人七年开发经验,擅长Java、Python、PHP、.NET、Node.js、微信小程序、爬虫、大数据等,大家有这一块的问题可以一起交流! &#x1…

Web后端开发-总结

web后端开发现在基本上都是基于标准的三层架构进行开发的,在三层架构当中,Controller控制器层负责接收请求响应数据,Service业务层负责具体的业务逻辑处理,而Dao数据访问层也叫持久层,就是用来处理数据访问操作的&…

interview3-微服务与MQ

一、SpringCloud篇 (1)服务注册 常见的注册中心:eureka、nacos、zookeeper eureka做服务注册中心: 服务注册:服务提供者需要把自己的信息注册到eureka,由eureka来保存这些信息,比如服务名称、…

SpringMVC之文件上传下载以及jrebel的使用

目录 一、文件上传 1.1 导入依赖 1.2 配置文件上传解析器 1.3 配置服务器存放文件地址 1.3.1 点击编辑Configurations 1.3.2 将项目部署至tomcat服务器上 1.3.3 配置相对路径 1.4 导入PropertiesUtil工具类 1.5 编写resource.properties 1.6 添加sql 1.7 编写PageCo…

自适应迭代扩展卡尔曼滤波算法AIEKF估计SOC VS 扩展卡尔曼估计SOC

自适应迭代扩展卡尔曼滤波算法(AIEK) 自适应迭代扩展卡尔曼滤波算法(AIEK)是一种滤波算法,其目的是通过迭代过程来逐渐适应不同的状态和环境,从而优化滤波效果。 该算法的基本思路是在每一步迭代过程中&a…

分割等和子集【动态规划】

分割等和子集 给你一个 只包含正整数 的 非空 数组 nums 。请你判断是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。 class Solution {//testpublic boolean canPartition(int[] nums) {if(nums null || nums.length 0) return false;int n nums…

YUVToRGB(CUDA Conversion)库的学习

目录 前言1. YUVToRGB1.1 Supported Feature1.2 Performance1.2.1 Performance Table1.2.2 How to Benchmark1.2.3 How to Verify the Accuracy 1.3 User Integration1.4 Summary 2. YUVToRGB案例2.1 环境配置2.2 run案例 3. YUVToRGB浅析4. 补充知识4.1 YUV不同格式区别4.2 Lu…

BGP路由属性

任何一条BGP路由都拥有多个路径属性(Path Attributes),当路由器通告BGP路由给它的对等体时,该路由将会携带多个路径属性,这些属性描述了BGP路由的各项特征,同时在某些场景下也会影响BGP路由优选的决策。 一…

ElasticSearch+Kibana on K8s 讲解与实战操作(版本7.17.3)

文章目录 一、概述二、ElasticSearch 节点类型与作用三、K8s 集群部署四、ElasticSearch on K8s 开始部署1)下载安装包2)构建镜像3)修改yaml编排4)开始部署5)测试6)elasticsearch-head5)卸载 五…

K8S:kubectl陈述式及声明式资源管理

文章目录 一.陈述式资源管理方法1.陈述式资源管理概念2.基本信息查看(1)查看版本信息(2)查看资源对象简写(3)查看集群信息(4)配置kubectl自动补全(5)node节点…

JAVASE---抽象类和接口

抽象类 抽象类的概念 在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。 抽象类语法 在…

解决git无法上传大文件(50MB)

解决方法 使用LFS解决GitHub无法上传大于50MB的文件 LFS简介 Git LFS(Large File Storage)是 Git 的一个扩展,用于管理大型文件,如二进制文件、图像、音频和视频文件等。它的主要目的是解决 Git 对大型二进制文件的版本控制和存…

【100天精通Python】Day59:Python 数据分析_Pandas高级功能-多层索引创建访问切片和重塑操作,pandas自定义函数和映射功能

目录 1 多层索引(MultiIndex) 1.1 创建多层索引 1.1.1 从元组创建多层索引 1.1.2 使用 set_index() 方法创建多层索引 1.2 访问多层索引数据 1.3 多层索引的层次切片 1.4 多层索引的重塑 2 自定义函数和映射 2.1 使用 apply() 方法进行自定义函…

飞行动力学 - 第18节-part2-航向操纵面 之 基础点摘要

飞行动力学 - 第18节-part2-航向操纵面 之 基础点摘要 1. 航向操纵面2. 非常规航向操纵面3. 正方向舵偏角产生的偏航力矩4. 产生或平衡侧滑角 β \beta β所需的方向舵偏角5. 参考资料 1. 航向操纵面 方向舵是航向的主要操纵面。 2. 非常规航向操纵面 开裂式阻力方向舵 ( Spl…

国际版腾讯云/阿里云:云解析DNS是什么

云解析DNS是什么 ​ 问答 云解析DNS是一种安全、快速、安稳、牢靠的威望DNS解析处理服务。 云解析DNS为企业和开发者将易于处理辨认的域名转换为计算机用于互连通讯的数字IP地址,然后将用户的拜访路由到相应的网站或应用服务器。 云解析 DNS(Domain Nam…

Spring安全配置: 构建安全稳固的Java应用

🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🦄 博客首页——🐅🐾猫头虎的博客🎐 🐳 《面试题大全专栏》 🦕 文章图文…

Docker 镜像库国内加速的几种方法

概述 在国内,拉取 Docker 镜像速度慢/时不时断线/无账号导致限流等,比较痛苦😣. 这里提供加速/优化的几种方法。 梳理一下,会碰到以下情况: 国内下载速度慢/时不时断线:是因为网络被限制了。没有公共镜像…