汇编程序设计之第三章 汇编语言程序格式

2024-06-13 14:52

本文主要是介绍汇编程序设计之第三章 汇编语言程序格式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 汇编语言源程序
    • 语句格式
    • 汇编语言源程序框架
    • DOS系统功能调用
  • 参数、变量和标号
    • 数值型参数
    • 变量定义伪指令
      • 常数
      • 表达式
      • 字符串
      • dup
      • 定义伪指令
    • 变量和标号的属性
      • 合成操作符
        • ptr
        • this
  • 程序段的定义和属性
    • DOS的程序结构
    • COM
    • 完整段定义
      • 地址计数器$的使用
    • 简化段定义伪指令

汇编语言源程序

语句格式

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

汇编语言源程序框架

在这里插入图片描述

  • 注意:每一个段的定义,其中code segment 里面有一个start 的开始标志,并且这个end start 是在code ends 的下一条指令

在这里插入图片描述

DOS系统功能调用

  • DOS功能调用:编了号的可由程序员调用的子程序

在这里插入图片描述
DOS 系统功能调用的一般方法如下:
(1)在寄存器 AH 中设置系统功能调用号,说明选择的功能
(2)在指定寄存器中设置入口参数
(3)用中断调用指令 INT 21H 执行功能调用
(4)根据出口参数分析功能调用的执行情况
在这里插入图片描述

参数、变量和标号

数值型参数

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

变量定义伪指令

在这里插入图片描述

常数

  • 注意区分内存对于不同字节的数据的存储

在这里插入图片描述

  • 我们可以看到,由于是小端存储,也就是数据的低位存在内存中的低地址,以dd 18h为例子,可以看到低位一个字节是18h,高位的三个字节是00h

表达式

  • 表达式本身就代表内存单元的地址
    在这里插入图片描述

字符串

  • 字符串存储各字符的ASCII码
  • 当字符串中的字符多余一个的时候,只能使用db进行定义
    在这里插入图片描述

  • 只分配单元,并没有赋初值
    在这里插入图片描述

dup

  • dup:前面跟一个数字,表示dup包含的操作重复的次数
    在这里插入图片描述
    在这里插入图片描述

定义伪指令

在这里插入图片描述

变量和标号的属性

在这里插入图片描述

  • TYPE没啥问题,要注意的是LENGTH :是专门用于计算分配给DUP定义的变量的单元数的,其余变量的LENGTH都是1,size = type * length

合成操作符

ptr

在这里插入图片描述

在这里插入图片描述

this

在这里插入图片描述

程序段的定义和属性

DOS的程序结构

在这里插入图片描述
在这里插入图片描述

COM

在这里插入图片描述
在这里插入图片描述

完整段定义

  • 注意段的默认关键字,同时段是用segment 和 ends来控制的
    在这里插入图片描述
    在这里插入图片描述
  • 可以看到,从byte , word,dword,para,page 分别是从字节,字,双字,段,页 一直变大

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

地址计数器$的使用

在这里插入图片描述

  • 要看是db还是dw 单位!!!

简化段定义伪指令

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

这篇关于汇编程序设计之第三章 汇编语言程序格式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1057621

相关文章

基于Python编写自动化邮件发送程序(进阶版)

《基于Python编写自动化邮件发送程序(进阶版)》在数字化时代,自动化邮件发送功能已成为企业和个人提升工作效率的重要工具,本文将使用Python编写一个简单的自动化邮件发送程序,希望对大家有所帮助... 目录理解SMTP协议基础配置开发环境构建邮件发送函数核心逻辑实现完整发送流程添加附件支持功能实现htm

C#控制台程序同步调用WebApi实现方式

《C#控制台程序同步调用WebApi实现方式》控制台程序作为Job时,需同步调用WebApi以确保获取返回结果后执行后续操作,否则会引发TaskCanceledException异常,同步处理可避免异... 目录同步调用WebApi方法Cls001类里面的写法总结控制台程序一般当作Job使用,有时候需要控制

Mysql中设计数据表的过程解析

《Mysql中设计数据表的过程解析》数据库约束通过NOTNULL、UNIQUE、DEFAULT、主键和外键等规则保障数据完整性,自动校验数据,减少人工错误,提升数据一致性和业务逻辑严谨性,本文介绍My... 目录1.引言2.NOT NULL——制定某列不可以存储NULL值2.UNIQUE——保证某一列的每一

SpringBoot 异常处理/自定义格式校验的问题实例详解

《SpringBoot异常处理/自定义格式校验的问题实例详解》文章探讨SpringBoot中自定义注解校验问题,区分参数级与类级约束触发的异常类型,建议通过@RestControllerAdvice... 目录1. 问题简要描述2. 异常触发1) 参数级别约束2) 类级别约束3. 异常处理1) 字段级别约束

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

使用Docker构建Python Flask程序的详细教程

《使用Docker构建PythonFlask程序的详细教程》在当今的软件开发领域,容器化技术正变得越来越流行,而Docker无疑是其中的佼佼者,本文我们就来聊聊如何使用Docker构建一个简单的Py... 目录引言一、准备工作二、创建 Flask 应用程序三、创建 dockerfile四、构建 Docker

Mysql常见的SQL语句格式及实用技巧

《Mysql常见的SQL语句格式及实用技巧》本文系统梳理MySQL常见SQL语句格式,涵盖数据库与表的创建、删除、修改、查询操作,以及记录增删改查和多表关联等高级查询,同时提供索引优化、事务处理、临时... 目录一、常用语法汇总二、示例1.数据库操作2.表操作3.记录操作 4.高级查询三、实用技巧一、常用语

利用Python脚本实现批量将图片转换为WebP格式

《利用Python脚本实现批量将图片转换为WebP格式》Python语言的简洁语法和库支持使其成为图像处理的理想选择,本文将介绍如何利用Python实现批量将图片转换为WebP格式的脚本,WebP作为... 目录简介1. python在图像处理中的应用2. WebP格式的原理和优势2.1 WebP格式与传统

C++ 函数 strftime 和时间格式示例详解

《C++函数strftime和时间格式示例详解》strftime是C/C++标准库中用于格式化日期和时间的函数,定义在ctime头文件中,它将tm结构体中的时间信息转换为指定格式的字符串,是处理... 目录C++ 函数 strftipythonme 详解一、函数原型二、功能描述三、格式字符串说明四、返回值五

C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式

《C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式》Markdown凭借简洁的语法、优良的可读性,以及对版本控制系统的高度兼容性,逐渐成为最受欢迎的文档格式... 目录为什么要将文档转换为 Markdown 格式使用工具将 Word 文档转换为 Markdown(.