汇编语言段定义的使用

 更新时间:2024年03月26日 11:38:56   作者:iGma_e  
汇编语言源程序的基本结构是段,一个汇编语言源程序由若干个代码段,本文主要介绍了汇编语言段定义的使用,需要的朋友们下面随着小编来一起学习学习吧

段定义三步走

段定义

关键字:segment(开始) ends(结束)

段名:不得超过八个字符。一般情况下,

  • code 表示代码段。
  • data 表示数据段

语法

段名 segment

段名 ends

段关联

关键字:assume

类型:CS(代码段)、DS(数据段)、SS(堆栈段)、ES(附加段)

语法:

assume 类型:段名

例:定义一个代码段 code,定义一个数据段 data

code segment
	assume cs:code,ds:data
code ends

data segment

data ends

段传送

传送是将段中的数据传到指定的段寄存器中。例如,讲 data 中的数据传到 DS 数据段中,在关联的时候并没有真正的传递数据。

代码段在定义时不需要段传送,其他段都需要手动传送。

通过 mov 不能将段直接传递给段寄存器,可以间接行传送。

……
mov ax,data
mov ds,ax
……

这段代码表示,现将 data 数据段存到 ax 中,再将 ax 中的数据存到 ds 中。

数据段

开辟空间的伪指令

  • db:开辟一个字节空间。
  • dw:开辟一个字空间。(两个字节)
  • dup:循环存字符

存储数据

  • 存储 10 进制数据时,直接写入。
  • 存储字符数据时用单引号扩起来,最终在 debug 模式下现实的是该字符 ASCII 码16进制表现形式。

语法格式

无地址符号

有地址符号

代码演示

使用 db 定义 5 个奇数,将第一个数存到 AH 中,最后一个数存到 AL 中。

最终,AX=0109,恰好是 AH 与 AL 的拼接。

使用 dw 定义 5 个奇数,存入 AX 中。

利用 dup 开辟三个单字节空间

data segment
    str db 3 dup(5)
data ends
code segment
    assume cs:code,ds:data
    main:
        mov ax,data
        mov ds,ax
        
    edit:
        mov ah,4ch
        int 21h
code ends
    end main

到此这篇关于汇编语言段定义的使用的文章就介绍到这了,更多相关汇编语言段定义内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家! 

您可能感兴趣的文章:

相关文章

  • 汇编语言之实现发出各种声音

    汇编语言之实现发出各种声音

    本文给大家分享一个练手小项目,响铃设计项目,列出了响铃,机枪声音,音乐播放器的代码,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2021-11-11
  • 汇编语言显示功能实现教程详解

    汇编语言显示功能实现教程详解

    这篇文章主要为大家介绍了汇编语言显示功能的实现过程,文中通过问题实例分析来为大家进行详细的描述讲解,有需要的朋友可以借鉴参考下,希望能够有所帮助
    2021-11-11
  • 汇编语言指令mov、add、sub、jmp详解

    汇编语言指令mov、add、sub、jmp详解

    这篇文章主要介绍了汇编语言指令mov、add、sub、jmp详解,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-02-02
  • iOS汇编入门教程之ARM64汇编基础教程

    iOS汇编入门教程之ARM64汇编基础教程

    这篇文章主要介绍了iOS汇编入门教程之ARM64汇编基础教程,本文通过例子给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-02-02
  • 汇编用串检测scasb寻找数的位置实现

    汇编用串检测scasb寻找数的位置实现

    这篇文章主要介绍了汇编用串检测scasb寻找数的位置实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • 汇编高效乘法运算的具体使用方法

    汇编高效乘法运算的具体使用方法

    在汇编语言中,乘法指令通常是通过mul(无符号乘法)和imul(有符号乘法)这两个指令实现的,本文就来详细的介绍一下汇编高效乘法运算,感兴趣的可以了解一下
    2024-03-03
  • 浅析ARMv8汇编指令adrp和adr

    浅析ARMv8汇编指令adrp和adr

    这篇文章给大家介绍ARMv8汇编指令adrp和adr的相关知识,暂时不介绍alpha生成的指令,因此先来主要分析一下,arm架构之所以少生成汇编指令的原因——adrp指令,感兴趣的朋友跟随小编一起看看吧
    2021-12-12
  • 计算机系统汇编语言和机器语言深入理解

    计算机系统汇编语言和机器语言深入理解

    这篇文章主要为大家介绍了计算机系统汇编语言和机器语言深入理解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-09-09
  • 使用汇编实现字符串的大小写转换

    使用汇编实现字符串的大小写转换

    这篇文章主要介绍了使用汇编实现字符串的大小写转换,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-01-01
  • 一文秒懂汇编中的循环问题

    一文秒懂汇编中的循环问题

    这篇文章主要介绍了一文秒懂汇编中的循环问题,通过每一行指令详细分析,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-04-04

最新评论