汇编-指针

一个变量如果包含的是另一个变量的地址, 则该变量就称为指针(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  
相关推荐
染指111021 小时前
18.第二阶段x64游戏实战-MFC列表框
汇编·c++·windows·游戏·游戏逆向·x64dbg
RaLi和夕4 天前
单片机学习笔记9.数码管
汇编·笔记·单片机·嵌入式硬件·学习
yu4106214 天前
GCC 内建函数汇编展开详解
汇编
手打猪大屁8 天前
ARM裸机开发——I.MX6U_汇编LED灯驱动
汇编·arm开发
zhmc9 天前
Keil A51汇编伪指令
汇编
攻城狮7号9 天前
【第48节】探究汇编使用特性:从基础到混合编程
汇编·c++·windows
打工人你好15 天前
Visual Studio Code 在.S汇编文件中添加调试断点及功能简介
汇编·ide·vscode
红白小蛋糕16 天前
《操作系统真象还原》第八章(1)——内存管理系统
汇编·笔记·ubuntu
tjsoft17 天前
asm汇编源代码之按键处理相关函数
汇编
tjsoft18 天前
asm汇编源代码之-汉字点阵字库显示程序源代码下载
汇编