当前位置: 首页 > news >正文

汇编原理(三)编程

源程序:

        汇编指令:有对应的机器码与其对应

        伪指令:无对应的机器码,是由编译器来执行的指令,编译器根据伪指令来进行相关的编译工作。

                ex1:XXX segment、XXX ends这两个是一对成对使用的伪指令,且必须会被用到,其功能是定义一个段,segment表示开始,ends表示段结束。XXX表示段名

                ex2:end是汇编程序的结束标志。end和ends不一样。ends是段的结束,end是整个程序结束。

                ex3:assume 寄存器与段的关联假设。    

 

   

标号:

        一个标号指代了一个地址。

        ex:codesg 放在segment的前面,作为一个段的名称,这个段的名称最终将被编译、连接程序处理为一个段的段地址(也就是说被cs换一个名字较codesg?

DOS中的程序运行:没懂

程序的返回:不理解是用来干嘛的

        指令为 mov ax, 4c00H

                    int 21H  

                    指令性质为汇编指令

 exe的执行

关于编译和链接

需要配置:Edit、masm、连接器link、调试工具(debug)、nodepad、ultraedit

shell:

        操作系统是由多个功能模块组成的庞大、复杂的软件系统。任何通用的操作系统,都要提供一个称为shell(外壳)的程序,用户通过使用这个程序来操作计算机系统工作。可不可以理解为控制台?

        不熟悉在shell里面的各种指令,比如cd打开文件夹,md修改文件夹这些

汇编程序从写出到执行的过程:

        编程(edit) -> XXX.asm -> 编译(masm) -> XXX.obj -> 连接(link) -> 1.exe -> 加载(command) -> 内存中的程序 -> 运行(CPU)

相关文章:

  • Android bw_costly_<iface>链
  • TypeScript算法每日一题:两数之和(1)
  • 计算机网络介绍
  • 09Linux GDB学习笔记
  • ctfshow jwt web入门
  • 【前端】vue+element项目中select下拉框label想要显示多个值多个字段
  • 自然语言处理(NLP)—— 神经网络语言处理
  • NPN与PNP的基础知识介绍
  • 使用git将本地文件上传到仓库+git常用指令
  • 二、Nginx目录结构与基本运行原理
  • SpringBoot:手动创建应用
  • 探索安全之道 | 企业漏洞管理:从理念到行动
  • 【ES001】elasticsearch实战经验总结(最近更新中)
  • Linux - 磁盘的分区和挂载
  • 操作系统基础知识
  • Angular4 模板式表单用法以及验证
  • create-react-app项目添加less配置
  • IP路由与转发
  • miaov-React 最佳入门
  • react-core-image-upload 一款轻量级图片上传裁剪插件
  • spring-boot List转Page
  • SpriteKit 技巧之添加背景图片
  • Sublime text 3 3103 注册码
  • Vue UI框架库开发介绍
  • XML已死 ?
  • 从地狱到天堂,Node 回调向 async/await 转变
  • 面试题:给你个id,去拿到name,多叉树遍历
  • 入口文件开始,分析Vue源码实现
  • 什么是Javascript函数节流?
  • 实现菜单下拉伸展折叠效果demo
  • 小程序button引导用户授权
  • - 语言经验 - 《c++的高性能内存管理库tcmalloc和jemalloc》
  • ​LeetCode解法汇总307. 区域和检索 - 数组可修改
  • #QT(TCP网络编程-服务端)
  • (1)Android开发优化---------UI优化
  • (13)[Xamarin.Android] 不同分辨率下的图片使用概论
  • (2)nginx 安装、启停
  • (C#)Windows Shell 外壳编程系列9 - QueryInfo 扩展提示
  • (DFS + 剪枝)【洛谷P1731】 [NOI1999] 生日蛋糕
  • (html5)在移动端input输入搜索项后 输入法下面为什么不想百度那样出现前往? 而我的出现的是换行...
  • (react踩过的坑)antd 如何同时获取一个select 的value和 label值
  • (Redis使用系列) Springboot 实现Redis 同数据源动态切换db 八
  • (大众金融)SQL server面试题(1)-总销售量最少的3个型号的车及其总销售量
  • (二)pulsar安装在独立的docker中,python测试
  • (附源码)计算机毕业设计ssm电影分享网站
  • (函数)颠倒字符串顺序(C语言)
  • (黑马出品_高级篇_01)SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式
  • (十)c52学习之旅-定时器实验
  • (十五)devops持续集成开发——jenkins流水线构建策略配置及触发器的使用
  • (五十)第 7 章 图(有向图的十字链表存储)
  • (一)C语言之入门:使用Visual Studio Community 2022运行hello world
  • (一)SvelteKit教程:hello world
  • (已解决)vue+element-ui实现个人中心,仿照原神
  • .NET 6 Mysql Canal (CDC 增量同步,捕获变更数据) 案例版
  • .net core 使用js,.net core 使用javascript,在.net core项目中怎么使用javascript