汇编-指针

一个变量如果包含的是另一个变量的地址, 则该变量就称为指针(pointer) 。指针是操作数组和数据结构的极好工具,因为它包含的地址在运行时是可以修改的。

复制代码
.data   
arrayB byte 10h, 20h, 30h, 40h 
ptrB dword arrayB
ptrB1 dword OFFSET arrayB

arrayW WORD 1000h,2000h,3000h
ptrW DWORD arrayW

32位汇编时,指针都是32位的

TYPEDEF定义指针类型

复制代码
.386  
.model flat,stdcall 
option casemap:none
.stack 4096


PBYTE TYPEDEF PTR BYTE      ;PBYTE指向8位数据的指针类型
;这样的声明通常放在靠近程序开始的地方, 在数据段之前, 使得接下来就可以用PBYTE 来定义变量
PWORD TYPEDEF PTR WORD     ;指向字的指针类型
PDWORD TYPEDEF PTR DWORD   ;指向双字的指针类型

.data   
arrayB BYTE 10h,20h,30h,40h 
ptr6 PBYTE ?         ;指针变量ptr6末初始化
ptr1 PBYTE arrayB     ;指针变量ptr2指向arrayB数组

arrayW WORD 1, 2, 3
arrayD DWORD 4, 5, 6
ptr2 PWORD arrayW 
ptr3 PDWORD arrayD


ExitProcess PROTO,dwExitCode:DWORD      

.code  
main PROC   
	
	mov esi, ptr1     ;把ptr1的值(arrayB的地址)给esi
	mov al, [esi]     ;al=10h
	mov esi, ptr2     
	mov ax, [esi]     ;ax=0001h
	mov esi, ptr3
	mov eax, [esi]    ;eax=00000004


INVOKE ExitProcess,0  
main ENDP   
END main  
相关推荐
kang0x012 小时前
汇编基础知识练习题
汇编
leluckys3 天前
swift- Swift中常见的面试题
开发语言·汇编·swift
bcbobo21cn4 天前
学习DOS汇编显示系统日期时间程序
汇编·dos中断21h·2ah功能·2ch功能
职豚求职小程序5 天前
东软集团题库笔试测评系统练习笔试2026新版
大数据·汇编·人工智能
我在人间贩卖青春20 天前
汇编之伪指令
汇编·伪指令
我在人间贩卖青春20 天前
汇编之伪操作
汇编·伪操作
济61720 天前
FreeRTOS基础--堆栈概念与汇编指令实战解析
汇编·嵌入式·freertos
myloveasuka20 天前
汇编TEST指令
汇编
我在人间贩卖青春20 天前
汇编编程驱动LED
汇编·点亮led
我在人间贩卖青春20 天前
汇编和C编程相互调用
汇编·混合编程