输出hello world,经典且不失优雅的操作。

在写之前先了解一些知识,会编译连接运行.asm文件

然后看一下汇编程序基本结构,有一点点matlab的感觉

代码段,数据段,附加数据段等。

注释符是分号

具体结构:

;汇编结构**data SEGMENT; 数据段,数据放到这段; 标识符 db/dw 数据;;定义字符串----   stri  db  "abdcsadabdahsd"
data ENDS**  edata SEGMENT ;附加数据段;附加数据部分.
edata ENDS **code SEGMENT  ;代码段,程序具体代码
ASSUME CS:code,DS:data,ES:edata 'data段是数据段DS,code段是代码段CS,ES附加段start:;代码区
code ENDS**
END start  ;程序结束,并且程序执行时由start开始执行。

然后是hello world程序:
1.定义数据段:

DATA SEGMENT ;定义数据段MYWORD DB  "hello world!!!$";定义数据字符串
DATA ENDS

2.定义代码与具体代码

CODE SEGMENT;定义代码段ASSUME CS:CODE,DS:DATA;表明谁是代码段,谁是数据段
start:MOV AX,DATA;数据首地址赋值给AX,AX是寄存器,累加器MOV DS,AX;使得DS等价于AX,同样指向数据段LEA DX,MYWORD;使DX寄存器指向数据变量word首地址MOV AH,09h;AH输出数据INT 21h;执行AH的09h功能,输出MOV AX,4c00h;设置寄存器功能INT 21h;调用寄存器功能,结束程序
CODE ENDS

3,结束

END start;代表结束程序并且在start处执行程序

完整代码截图:

然后编译连接ok,不知道怎么做的话
可以看我的另一篇总结文章,
dosbox下自动mount
其实vscode有个快捷生成段的方法:
.code
.data
得到

但是不知道为什么编译老是不过,最后老实的将_text$00等改了,
知道原因的网友,可以私信告诉我一下,谢啦,共同进步

ps: vscode插件: MASM 可以编写汇编代码,不是评论里的MSAM,是我打错了。。。
不过vscode只是能编辑代码,编译链接运行还是要使用DOSBOX(虚拟的一个32位运行环境的软件),配合四个exe文件进行编译链接运行就好啦。

vscode较详细注释的汇编语言hello world 输出程序,第一个汇编程序相关推荐

  1. 汇编语言复习摘要四——第一个汇编程序

    1. 程序执行流程:简单说下,编写汇编程序->对程序进行编译和链接(注意,是两个动作)->执行可执行文件.操作系统将依照可执行文件中的描述信息,将可执行文件中的机器码和数据加载入内存,并进 ...

  2. uboot 详细注释讲解

    转自:http://home.eeworld.com.cn/my/space-uid-135723-blogid-25548.html uboot 详细注释讲解 标签:  uboot  注释  讲解  ...

  3. 汇编实验 用表格形式显示字符(附源码详细注释和相关注意的知识)

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/qq_40774175/article/ ...

  4. malloc 源码_【C++学习笔记(九)】之 new运算符的使用/ new 与 malloc的异同(附代码,详细注释)...

    new 运算符的使用 一. new的简单介绍: new运算符用于在堆区开辟空间,所有new出来的对象,对返回该类对象的指针. 二. new 与 malloc 的异同点: 1.malloc作用相同, m ...

  5. 51nod 1126 求递推序列的第N项 思路:递推模拟,求循环节。详细注释

    题目: 看起来比较难,范围10^9 O(n)都过不了,但是仅仅是看起来.(虽然我WA了7次 TLE了3次,被自己蠢哭) 我们观察到 0 <= f[i] <= 6 就简单了,就像小学初中学的 ...

  6. 【详细注释】1058 选择题 (20 分)

    立志用最少的代码做最高效的表达 PAT乙级最优题解-->传送门 批改多选题是比较麻烦的事情,本题就请你写个程序帮助老师批改多选题,并且指出哪道题错的人最多. 输入格式: 输入在第一行给出两个正整 ...

  7. step7db块寻址_step7中的难点:间接寻址示例,中文详细注释。

    step7中的难点:间接寻址示例,中文详细注释. 推荐欢迎纠错,防止误导. FUNCTION "DBtoDB" : VOID //该功能块的作用是把一个数据块中的指定的一批数据,复 ...

  8. 快速傅里叶变换(FFT)的C#实现及详细注释

    快速傅里叶变换(FFT)的C#实现及详细注释 ----------------------------------------------------------------------------- ...

  9. createsamples.cpp中生成vec文件的实现及详细注释、图解——人脸识别的尝试系列(三)

    在我们开始训练我们的Haar分类器之前,首先要对样本进行处理. 人脸识别的尝试系列(一)中:http://blog.csdn.net/u011583927/article/details/446274 ...

最新文章

  1. linux内核和cpu指令集,Linux之父:Intel别浪费时间在AVX512这类指令集、多堆核心才是正道...
  2. JSP基本语法:文件结构、脚本元素、指令元素、动作元素
  3. Android开发实践:在任意目录执行NDK编译
  4. 强大的表格控件handsometable,结合vue
  5. python字典实现关键字检索_如何实现搜索框的关键词提示功能
  6. HTML中字体的垂直排列
  7. DataWorks功能实践速览 05——循环与遍历
  8. 模型评估准确率、召回率、ROC曲线、AUC总结
  9. C/C++打造Windows岁月留声机
  10. 【LeetCode笔记】17.电话号码的字母组合(Java、DFS)
  11. Vue - 条件渲染与列表渲染
  12. (转) RabbitMQ学习之spring整合发送同步消息(注解实现)
  13. xadmin获取mysql_Django+Xadmin构建项目的方法步骤
  14. “原本我不会在拼多多购物,但它补贴实在太多了”
  15. opencv基础:相机参数标定(camera calibration)及标定结果如何使用
  16. 多重搜索算法_Android多重搜寻,例如传送,搜寻联络人
  17. python学习之记事本
  18. 国开大学计算机应用实操题作业如何上传,国开电大18秋《计算机应用基础》形考任务作业.doc...
  19. [裴礼文数学分析中的典型问题与方法习题参考解答]5.1.13
  20. 感知特性评价指标SSIM

热门文章

  1. JAVA web 会话技术CookieSession
  2. mysql Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nona
  3. Educational Codeforces Round 41(已补D,E)
  4. python初步学习-查看文档及数据类型转换
  5. highcharts总结
  6. Nginx-----相关配置-详细介绍
  7. BZOJ 3203 sdoi 2013 保护出题人
  8. 在利用计算机生成,计算机生成人像,从而使人脸的模糊变为现实
  9. [Python人工智能] 三.theano实现分类神经网络及机器学习基础
  10. 【数据结构与算法】之深入解析“石子游戏IX”的求解思路与算法示例