首页 > 其他分享 >4.7 数组的读取和写入,type指令和一些杂项

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

时间:2024-04-04 11:03:46浏览次数:11  
标签:4.7 ends type segment mov 杂项 codesg data stack

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

标签:4.7,ends,type,segment,mov,杂项,codesg,data,stack
From: https://blog.csdn.net/2203_75300307/article/details/137363220

相关文章

  • typeof
    typeof是C语言的一个扩展,用于获取表达式的类型。它的主要用途包括:1、声明变量类型:可以用typeof来声明变量,而无需显式指定变量的类型。这样可以使代码更加简洁和易读,特别是在处理复杂的表达式时。2、简化类型名称:在定义结构体、联合体等复杂类型时,使用typeof可以简......
  • Typecho自媒体博客Spimes主题 X7.2
    主题介绍spimes主题专为博客、自媒体、资讯类的网站设计开发,自适应兼容手机、平板设备。一款简约新闻自媒体类的typecho主题,设计上简约、干净、精致、响应式,后台设置更是强大而且实用的新闻自媒体类主题。已经更新到7.2,删减了大部分主题功能(主要是一些不常用的功能,鸡肋的功......
  • 浅谈TypeScript对业务可维护性的影响
    前言笔者认为,TypeScript是服务于业务的,核心就是提高代码的可维护性.TypeScript是把双刃剑,如果类型系统使用的不好,反而会阻碍开发,甚至最后就变成了anyScript.笔者最近在使用TypeScript的过程中,有了一点点微不足道的思考,想和大家分享、探讨.本文比较适合有真实Ty......
  • 打字动画 Typed.js
    打字动画Typed.js 概述Typed.js是一个JavaScript库,用于在网页上创建打字动画效果。它使您能够模拟打字机或逐字显示文本的效果,从而为用户提供逐渐展示文本的视觉体验。Typed.js提供了丰富的选项和配置,可以自定义打字动画的速度、暂停时间、删除效果等。您可以使用HTM......
  • Vue3+TypeScript项目(SKU管理模块)
    一、SKU模块静态页面src\views\product\sku\index.vue<template><el-card><el-tableborderstyle="margin:10px0px"><el-table-columntype="index"label="序号"width="80px"></el-table......
  • HOW - Typescript 常用特性介绍
    目录一、目标二、常用特性介绍anyvsunknowntypevsinterface泛型:Generics1.函数的泛型2.接口、类、类型别名的泛型3.泛型约束:限制类型变量的取值范围交叉类型1.用法一:一个对象拥有多个对象的所有属性2.用法二:Mixin条件类型1.用法一:Non......
  • 06 | auto/decltype:为什么要有自动类型推导?
    我们从宏观的层面上重新认识了C++,从今天开始,我们将进入一个新的“语言特性”单元,“下沉”到微观的层面去观察C++,一起去见一些老朋友、新面孔,比如const、exception、lambda。这次要说的,就是C++11里引入的一个很重要的语言特性:自动类型推导。自动类型推导如果你有过一些......
  • TS(TypeScript)— 搭建开发环境
    1.创建pakeage.jsonnpminit//自选参数npminit-y//默认参数 2.构造目录安装ts开发依赖npminstalltypescripttslint-g创建功能文件夹 初始化ts(安装typescript就可以使用tsc命令)生成tsconfig.json文件tsc--init 配置webpacknpminstallwe......
  • Mybatis 中 javaType 和 jdbcType 对应关系
      JDBCType             JavaType     CHAR                  String  VARCHAR              String  LONGVARCHAR                Str......
  • Type注解对象类型
    Type注解对象在TS中对于对象数据的类型注解,除了使用interface之外还可以使用类型别名来进行注解,作用相似typePerson={name:stringage:number}letpeople:Person={name:'张三',age:16}console.log(people)Type继承type同样也可......