易语言之内嵌汇编取变量指针的例子
2010-02-15 07:27
441 查看
经本人研究内嵌汇编不能取自定义类型(成员非4字节,取来的是对齐结构的指针,比如成员为字节型分配4个字节),和非小数和整数,文本型数组不可以取指针,其它的都可以
要注意的是易的子程序前有EBP入栈操作,所以要有出栈操作才行
这是我写的取整数型指针的例子(字节型,短整数型,小数型,日期时间型,双精度小数型都通用,注意参数要为参考):
.版本 2
.支持库 spec
.子程序 取整数型指针, 整数型, 公开
.参数 整数, 整数型, 参考
'push ebp <------------这两句已经是易原有的
'mov ebp, esp
置入代码 ({ 139, 69, 8, 201, 194, 4, 0 })
' mov eax, dword ptr [ebp+08]
' leave <------------赋值给ESP,从堆栈中弹出到EBP
' ret 0004
返回 (0)
取文本指针的例子:
.版本 2
.支持库 spec
.子程序 取文本型指针, 整数型, 公开
.参数 文本, 文本型
置入代码 ({ 139, 69, 8, 139, 0, 201, 194, 4, 0 })
' mov eax, dword ptr [ebp+08]
' mov eax, dword ptr [eax]
' leave
' ret 0004
返回 (0)
取字节集指针的例子:
.版本 2
.支持库 spec
.子程序 取字节集指针, 整数型, 公开
.参数 字节集, 字节集, 参考
置入代码 ({ 139, 69, 8, 139, 0, 131, 192, 8, 201, 194, 4, 0 })
' mov eax, dword ptr [ebp+08]
' mov eax, dword ptr [eax]
' add eax, 00000008
' leave
' ret 0004
返回 (0)
要注意的是易的子程序前有EBP入栈操作,所以要有出栈操作才行
这是我写的取整数型指针的例子(字节型,短整数型,小数型,日期时间型,双精度小数型都通用,注意参数要为参考):
.版本 2
.支持库 spec
.子程序 取整数型指针, 整数型, 公开
.参数 整数, 整数型, 参考
'push ebp <------------这两句已经是易原有的
'mov ebp, esp
置入代码 ({ 139, 69, 8, 201, 194, 4, 0 })
' mov eax, dword ptr [ebp+08]
' leave <------------赋值给ESP,从堆栈中弹出到EBP
' ret 0004
返回 (0)
取文本指针的例子:
.版本 2
.支持库 spec
.子程序 取文本型指针, 整数型, 公开
.参数 文本, 文本型
置入代码 ({ 139, 69, 8, 139, 0, 201, 194, 4, 0 })
' mov eax, dword ptr [ebp+08]
' mov eax, dword ptr [eax]
' leave
' ret 0004
返回 (0)
取字节集指针的例子:
.版本 2
.支持库 spec
.子程序 取字节集指针, 整数型, 公开
.参数 字节集, 字节集, 参考
置入代码 ({ 139, 69, 8, 139, 0, 131, 192, 8, 201, 194, 4, 0 })
' mov eax, dword ptr [ebp+08]
' mov eax, dword ptr [eax]
' add eax, 00000008
' leave
' ret 0004
返回 (0)
相关文章推荐
- 汇编语言的寻址方式与C语言中的指针是一个东西。
- __asm__ __volatile__ GCC的内嵌汇编语法 AT&T汇编语言语法
- Delphi内嵌汇编语言BASM精要(转帖)
- C语言内嵌汇编语言
- AT&T汇编语言与GCC内嵌汇编简介
- win32汇编:环境变量配置和Hello,World!例子
- 汇编语言中可以定义变量吗?怎么定义?有局部变量和全局变量之分吗?作用域是什么?
- __asm__ __volatile__ GCC的内嵌汇编语法 AT&T汇编语言语法(二)
- __asm__ __volatile__ GCC的内嵌汇编语法 AT&T汇编语言语法(一)
- gcc中的内嵌汇编语言(Intel i386平台)
- __asm__ __volatile__ GCC的内嵌汇编语法 AT&T汇编语言语法(二)
- Go语言:变量声明,作用域,指针
- __asm__ __volatile__ GCC的内嵌汇编语法 AT&T汇编语言语法
- AT&T汇编语言与GCC内嵌汇编简介
- DirectX 9高层着色语言介绍1——引言、简单例子、汇编语言和编译对象
- 汇编语言之sp指针
- 汇编语言基础之七- 框架指针的省略(FPO)
- GCC内嵌汇编语言
- AT&T汇编语言与GCC内嵌汇编简介