IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> 一个编译型程序的编译,链接,运行过程(以汇编为例) -> 正文阅读

[系统运维]一个编译型程序的编译,链接,运行过程(以汇编为例)

1.编写汇编代码并将代码文件命名为以.asm结尾的文件,我命名的是huibian.asm。

程序功能:计算2的三次方

assume cs:abc//定义代码段地址

abc SEGMENT
    MOV ax, 2;//将2送入ax寄存器
    ADD ax, ax;//ax=ax*2
    ADD ax, ax;//ax=ax*2

    MOV ax, 4c00h;//将ax寄存器的值放入4000h的内存中
    INT 21h;//21号中断调用
abc ends

end//程序结束

2.打开vscode的Dos系统(下载MASM插件)

在这里插入图片描述

3.可以输入指令cls清空屏幕,方便观察。然后输入masm huibian.asm。这里是对文件进行编译。

在这里插入图片描述出现了assembling:huibian.asm说明编译成功,会生成huibian.obj文件,即二进制目标文件。

4.执行命令行link huibian.asm,这里的意思是链接程序执行中需要用到的库函数。

在这里插入图片描述这里出现了四个链接库,由于我的程序不需要用到,所有都选择回车跳过。
这时候会在当前文件夹下生成huibian.exe文件。

5.运行huibian.exe文件,然后观察内存。

可以直接用huibian.exe指令执行这个文件,为了方便演示,我选择用单步执行的方式进行运行。
在这里插入图片描述可以看到,ax最后等于0008H,说明程序运行成功。然后现在用p命令退出程序(当遇到INT中断时,要使用p命名执行,而不能使用t命令)
在这里插入图片描述程序正常退出。

6.总结

在这里插入图片描述

1.首先通过文本编辑器写出huibian.asm文件。

2.然后通过MASM.exe将huibian.asm文件编译为机器码文件,即huibian.obj文件。

3.然后在链接为exe文件。

4.执行exe时,操作系统的cmd会将exe文件写入空闲内存,并修改DS寄存器,然后装入64B(100H)的PSP文件,修改CS寄存器的值为DS+10H,IP寄存器的值为0。

5.然后CPU开始根据CS:IP的地址开始运行程序。

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-07-11 16:57:23  更:2021-07-11 16:59:30 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/5 21:24:20-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码