博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
汇编语言 第四章 第一个程序
阅读量:5234 次
发布时间:2019-06-14

本文共 1042 字,大约阅读时间需要 3 分钟。

1、首先我们写一段简单的汇编语言源程序

assume cs:code

code segment

  mov ax,0123h

  mov bx,0456h

  add ax,bx

  add ax,ax

  

  mov ax,4c00h

  int21h

code ends

end

那么该程序中出现了什么呢

(1)伪指令

1)segment和ends

segment 和 ends是一对成对使用的伪指令,在写可被编译的汇编程序时,必须要用到的一对伪指令。他、它们的功能是定义一个段,segment为开始,ends为结束。格式为:

段名  segment

段名 ends

一个汇编程序是由多个段组成的,这些段用来存放代码、数据或当作栈空间来使用。而一个有意义的汇编程序至少要有一个段用来存放代码。

2)end 

end是一个汇编程序的结束标记,编译器在编译汇编程序的过程中,如果碰到了伪指令end,就结束对源程序的编译。

3)assume

这条伪指令的含义为假设。它用来假设某一段寄存器和源程序中的某一个用segment和ends定义的段相关联。

(2)程序

即源程序中的汇编指令组成了最终由计算机执行的程序。

(3)标号

汇编语言源程序中,还有一些标号,如“code”。一个标号指代了一个地址。比如code在segment的前面,作为一个段的名称,这个段的名称最终将被编译、连接程序处理为一个段的段地址。

(4)程序的结构

1)我们要先定义一个段,名称为code

code segment

code ends

2)写入汇编指令

3)指出程序在何处结束

code segment

...........

code ends

end

3)code被当作代码段使用,所以应该将code和cs连系起来

assume cs:code

code segment

...........

code ends

end

(5)程序返回

一个程序结束后,将cpu的控制权交还给使它得以运行的程序,我们称这个过程为程序返回。

如何返回:在程序的末尾添加返回的程序段。

即 mov ax,4c00h

  int 21h

2、程序的执行

(1)使用文本编辑器编辑程序,生成   .asm  

(2)使用masm编译该程序生成     .obj

(3)使用link连接目标文件,生成   .exe

(4)最后直接输入程序名运行

转载于:https://www.cnblogs.com/-Anguvia-/p/9973870.html

你可能感兴趣的文章
Hive教程(1)
查看>>
第16周总结
查看>>
C#编程时应注意的性能处理
查看>>
Fragment
查看>>
比较安全的获取站点更目录
查看>>
苹果开发者账号那些事儿(二)
查看>>
使用C#交互快速生成代码!
查看>>
UVA11374 Airport Express
查看>>
P1373 小a和uim之大逃离 四维dp,维护差值
查看>>
NOIP2015 运输计划 树上差分+树剖
查看>>
P3950 部落冲突 树链剖分
查看>>
读书_2019年
查看>>
读书汇总贴
查看>>
微信小程序 movable-view组件应用:可拖动悬浮框_返回首页
查看>>
MPT树详解
查看>>
空间分析开源库GEOS
查看>>
RQNOJ八月赛
查看>>
前端各种mate积累
查看>>
jQuery 1.7 发布了
查看>>
Python(软件目录结构规范)
查看>>