4.7 数组的读取和写入,type指令和一些杂项

4.7 数组的读取和写入,type指令和一些杂项

可以通过word ptr将db转为dw,然后按照dw的方式去存储数据

1. 段名也可以把其地址赋给变量

assume cs:codesg,ds:data,ss:stack
data segment
    db 12,34
    dw 12,34
    db 'hello world'
data ends
stack segment
    db 10 dup (0)
stack ends
codesg segment
    start:
    mov ax,data
    mov bx,stack
    mov ax,0afh
	
codesg ends
end start

image.png

2. 数组

2.1 type 指令

  • 数组,在定义数据前面加一个符号,就是数组名
  • type后面加数组名可以求出数组的类型,如db为1,dw为2
assume cs:codesg,ds:data,ss:stack
data segment
	arr dw 12,34
	arr2 db 'hello world'
data ends
stack segment
	db 10 dup (0)
stack ends
codesg segment
    start:
    mov ax,type arr
	mov ax,type arr2
	mov ax,0afh
codesg ends
end start

2.2 标号

  • 数据前面也可以是有一个标号的
  • 我们可以取得标号的地址再赋给变量
assume cs:codesg,ds:data,ss:stack
data segment
data ends
stack segment
	db 10 dup (0)
stack ends
codesg segment
	arr dw 12,34
	arr2 db 'hello world'
    start:
    mov si,offset arr
	mov bx,offset arr2
	mov ax,0afh
codesg ends
end start

image.png

2.3 数组的应用

  • 数组也可以通过下标来取值
  • 找到array对应的内存,将其加两个字节,再从那个地方取得元素
  • 如果数组里面存放的是字符,那么从数组取到的则是该字符的ASCII码
  • 如果不加下标,则默认取数组的第一个元素
  • 也可以将变量里面的值赋给数组
assume cs:codesg,ds:data,ss:stack
data segment
data ends
stack segment
	db 10 dup (0)
stack ends
codesg segment
	arr dw 12,34
	arr2 db 'hello world'
    start:
    mov ax,arr[0]
	mov si,offset arr
	mov ax,0afh
codesg ends
end start

image.png

image.png

  • 如果想要访问数据段的数据,得需要将这里的ds和它的标号data联系在一起
mov ax,data
mov ds,ax
  • 例如
assume cs:codesg,ds:data,ss:stack
data segment
	arr db 10h,20h,30h,40h,50h
	arr2 db 'hello world'
data ends
stack segment
	db 10 dup (0)
stack ends
codesg segment

    start:
    mov ax,data
	mov ds,ax
	mov al,arr[2]
	mov bx,data
codesg ends
end start

image.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/515318.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

YOLOv5改进 | 低照度检测 | 2024最新改进CPA-Enhancer链式思考网络(适用低照度、图像去雾、雨天、雪天)

一、本文介绍 本文给大家带来的2024.3月份最新改进机制,由CPA-Enhancer: Chain-of-Thought Prompted Adaptive Enhancer for Object Detection under Unknown Degradations论文提出的CPA-Enhancer链式思考网络,CPA-Enhancer通过引入链式思考提示机制,实现了对未知退化条件下…

Shell GPT:直接安装使用的chatgpt应用软件

ShellGPT是一款基于预训练生成式Transformer模型(如GPT系列)构建的智能Shell工具。它将先进的自然语言处理能力集成到Shell环境中,使用户能够使用接近日常对话的语言来操作和控制操作系统。 官网:GitHub - akl7777777/ShellGPT: *…

OpenCV4.9开发之Window开发环境搭建

1.打开OpenCV所在github地址 2.点击opencv仓库,进入仓库详情,点击右下方的OpenCV 4.9.0进入下载页面 3.点击opencv-4.9.0-windows.exe下载 开始下载中... 下载完成 下载完成后,双击运行解压,默认解压路径,修改为c:/

企业家升维认知:引领企业持续发展的关键

一、引言 在快速变化的时代背景下,企业家面临着前所未有的挑战与机遇。新东方教育科技集团董事长俞敏洪曾深刻指出:“企业家本身要不断升维自己的认知,才能带领企业持续发展。”这句话不仅揭示了企业家认知升维的重要性,也为我们…

JRT简化开发环境

JRT是完全前后端分离的项目,实际工程是逻辑上完全前后端分离,代码层级和工程是不离的。这样就可以做到一键启动,同时又有分离的好处。开始页面后缀都沿用aspx,最开始考虑过修改后缀为html,当时觉得搞aspx也不错&#x…

Qt 的发展历史、现状与启示

Qt 最早在1991年由挪威的两位程序员 Eirik Chambe-Eng 和 Haavard Nord 开发,他们在1994年创立 Trolltech 公司(奇趣科技)正式经营软件业务。Qt 的第一个公众预览版于1995年面世,之后在2008年被诺基亚收购;2011年到201…

【Oracle篇】expdp/impdp高效完成全部生产用户的全库迁移(第四篇,总共四篇)

☘️博主介绍☘️: ✨又是一天没白过,我是奈斯,DBA一名✨ ✌✌️擅长Oracle、MySQL、SQLserver、Linux,也在扩展大数据方向的知识面✌✌️ ❣️❣️❣️大佬们都喜欢静静的看文章,并且也会默默的点赞收藏加关注❣️❣️…

SEO必备,网站词库拓展建设

我以前做网站是没有词库这个概念的,今天恰巧和站长交流的时候提到了词库的建设,大致问题就是如何增加词库。其实我也不是特别明白,只是听说使用长尾关键词挖掘然后拓展,至于怎么用,也没有聊到。 所以我的求知欲让我去…

Spring Boot:Web开发之视图模板技术的整合

Spring Boot 前言Spring Boot 整合 JSPSpring Boot 整合 FreeMarkerSpring Boot 整合 ThymeleafThymeleaf 常用语法 前言 在 Web 开发中,视图模板技术(如 JSP 、FreeMarker 、Thymeleaf 等)用于呈现动态内容到用户界面的工具。这些技术允许开…

CSS设置网页背景

目录 概述: 1.background-color: 2.background-image: 3.background-repeat: 4.background-position: 5.background-attachment: 6.background-size: 7.background-origin: 8.background-…

SAP_MM模块-无价值物料管理实现思路

无价值物料管理实现思路 业务背景一: 对于工具类的物料,本来想通过无物料号,收货时直接消耗在成本中心的方式来处理,这样,工程部和采购部都比较方便。 但财务部提出这部分工具物料还需要进行库存管理,但…

【Python异常处理】

在Python无法正常处理程序时就会发生异常,此时我们需要捕捉并处理它,否则程序就会终止执行。 例如: x 1 / 0 print(x)运行结果: ZeroDivisionError: division by zero #此时程序终止执行Python提供了三个非常重要的功能来处理…

ubuntu20.04下搜狗输入法的安装

1、安装 fcitx 输入法的框架 sudo apt install fcitx-bin sudo apt-get install fcitx-table 2、Ubuntu下的默认浏览器火狐搜索 搜狗输入法 搜狗输入法linux-首页 (下载x86_64) 3、安装依赖 sudo apt install libqt5qml5 libqt5quick5 libqt5quickwidgets5 qml-modu…

【漏洞复现】万户 ezOFFICE wf_printnum SQL注入漏洞

免责声明:文章来源互联网收集整理,请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该…

【学习心得】Numpy学习指南或复习手册

本文是自己在学习Numpy过后总是遗忘的很快,反思后发现主要是两个原因: numpy的知识点很多,很杂乱。练习不足,学习过后一段时间不敲代码就会忘记。 针对这两个问题,我写了这篇文章。希望将numpy的知识点织成一张网&…

JavaScript高级应用

学习作用域、变量提升、闭包等语言特征,加深对 JavaScript 的理解,掌握变量赋值、函数声明的简洁语法,降低代码的冗余度。 理解作用域对程序执行的影响 能够分析程序执行的作用域范围 理解闭包本质,利用闭包创建隔离作用域 了解…

面试总结------2024/04/04

1.面试官提问:你说你在项目中使用springsecurity jwt 实现了登录功能,能简单讲一下怎么实现的吗? 2.使用RabbitMQ实现订单超时取消功能 订单状态定义 首先,我们需要定义订单的不同状态。在这个示例中,我们可以定义以下…

[COCI 2011/2012 #5] EKO / 砍树 (二分)不开龙永远的痛!

不开龙long永远的痛&#xff01; 不开龙long永远的痛&#xff01; 不开龙long永远的痛&#xff01; 不开龙long永远的痛&#xff01; 不开龙long永远的痛&#xff01; //应该以最高的树为基准二分 初次尝试&#xff1a; #include<algorithm> #include<iostream&g…

图的深度优先遍历DFS得到各节点的度

在 一文中&#xff0c;我们通过了广度优先搜索来得到图结构中各结点的度&#xff0c;在这一篇文章中&#xff0c;我们要通过深度优先搜索来得到图结构中各结点的度。 初始化 初始化&#xff0c;在下面的代码中&#xff0c;我们创建了一个具有6个结点的图结构&#xff0c;以及…

YOLO电动车检测识别数据集:12617张图像,yolo标注完整

YOLO电动车检测识别数据集&#xff1a;12617张图像&#xff0c;电动车一类&#xff0c;yolo标注完整&#xff0c;部分图像应用增强。 适用于CV项目&#xff0c;毕设&#xff0c;科研&#xff0c;实验等 需要此数据集或其他任何数据集请私信