addressing相关内容

从适配器调用 Activity 方法

是否可以从ListAdapter调用Activity中定义的方法? (我想在 list's 行中创建一个 Button 并且当这个按钮被点击时,它应该执行在相应的 Activity 中定义的方法.我试图在我的 ListAdapter 中设置 onClickListener 但我不知道如何调用这个方法,它的路径是什么...) 当我使用 Activity.this.method() 时,我 ..
发布时间:2021-12-06 13:55:51 移动开发

x86_64 中运行时代码替换的绝对寻址

我目前正在使用一些 32 位代码替换方案,其中移动到另一个位置的代码读取变量和类指针.由于 x86_64 不支持绝对寻址,我无法在代码的新位置获取变量的正确地址.详细的问题是,由于 rip 相对寻址,指令指针地址与编译时不同. 那么有没有办法在 x86_64 中使用绝对寻址或另一种方法来获取变量地址而不是指令指针相关的地址? 类似:leaq variable(%%rax), %%rbx ..
发布时间:2021-11-25 06:41:43 C#

基于索引模式到间接寻址模式的转换(x86汇编)

我正致力于将示例从复杂的间接寻址模式更改为简单的间接寻址模式片段.但是,我遇到了一个来自基本模式的例子,我无法“转换". 代码: 移动 %eax, 28(%esp) 我试过了 addl $28, %espmovl (%eax), %esp 这会造成分段错误;我不知道我还应该怎么写. 另一个例子,我没能“转换是 compl $4, 28(%esp) -> 进入 addl $ ..
发布时间:2021-09-29 19:33:02 其他开发

在循环 VBA PPT 中更改形状颜色

我需要根据条件更改幻灯片中某些形状的颜色,如果形状是某些连接器的 EndConnectedShape(连接器是根据 .txt 文件中的某些数据选择的,但数据输入部分工作正常). 虽然它必须很简单,但我尝试按名称获取形状的部分仍然无法正常工作: 子测试()Dim oFSO 作为文件系统对象设置 oFSO = 新文件系统对象Dim oFS As TextStreamDim i, j 只要Dim ..
发布时间:2021-06-19 19:03:40 其他开发

如何从NTFS文件系统上的MFT获取文件的LBA(逻辑块寻址)?

我访问了$ MFT文件并提取了文件属性. 鉴于MFT的文件属性,如何从NTFS文件系统上的MFT记录中获取文件的LBA? 要计算LBA,我知道文件的群集号. 是否可以使用簇号进行计算? 解决方案 我不能完全确定您的问题-但是,如果您只是想在文件磁盘上查找逻辑位置,则有各种IOCTL将会实现这一目标. 例如,MFT文件记录:FSCTL_GET_NTFS_FILE_RE ..
发布时间:2020-09-21 21:36:06 其他开发

Simpletron机器和间接寻址

我最近进行了Simpletron任务 来自Deitel和Deitel教科书. Simpletron机器语言只有一种寻址模式,即直接寻址. (也就是说,您必须在指令的操作数部分中指定要访问的地址.) 因此,我认为无法在运行时计算地址并对其进行访问. 所以要做这样的事情: [pseudo-c] int a[10]; ... int i = 0; while(a[i ..
发布时间:2020-09-12 23:57:46 其他开发

为什么在16位计算机上使用20个地址空间可以访问1 MB而不是2 MB?

好的,这个问题听起来很简单,但是我很惊讶.在古老的1 MB内存巨大的日子里,Intel试图找出如何使用16位来访问1 MB内存的方法.他们提出了使用段和偏移地址值生成20位地址的想法. 现在,20位给出2 ^ 20 = 1,048,576个可以寻址的位置.现在假设我们在每个地址位置访问1个字节,我们得到1,048,576/(1024 * 1024)= 2 ^ 20/2 ^ 20兆字节= 1兆 ..
发布时间:2020-09-06 19:31:57 其他开发

在汇编器中寻址

有些东西我无法消化.我正在学习一些汇编程序,现在我正在讨论寻址这一章.我了解方括号用于取消引用的概念,但是以某种方式,当我看到它的用法时,我无法理解它的意义.更确切地说,这是我开始困惑的地方: mov al, [L1] 在这里我以L1为例,是某种宏,该宏以后会在机器代码中替换为真实地址,对吧? 因此,该指令的作用是:取消引用al寄存器(因为几乎无法更改物理地址),并将其值更改为存储 ..
发布时间:2020-05-16 21:10:24 其他开发

为什么32位处理器即使字长很大也只能寻址4GiB的内存?

直到现在,我还认为32位处理器可以使用4 GiB的内存,因为2 32 是4 GiB,但是这种方法意味着处理器的字长= 1字节 >.因此,具有32位程序计数器的进程可以寻址2 32 个不同的存储字,因此我们有4个GiB. 但是,如果处理器的字长大于1个字节,我相信现在大多数处理器都是这种情况(我的理解是,字长等于...数据总线,因此具有64位数据总线的处理器的字长= 8字节. 现在同一台 ..
发布时间:2020-05-08 20:23:02 其他开发

如果2³²位= 40亿位而不是字节,那么32位如何寻址4GB?

从本质上讲,4Gb如何变成4GB?如果内存正在寻址 Bytes ,可能性是否应该为2 (32/8)? 解决方案 这取决于您如何处理数据. 如果使用32位寻址每个 bit ,则可以寻址2 32 位或4Gb = 512MB.如果像大多数当前体系结构一样处理 bytes (字节),它将为您提供4GB. 但是,如果要处理更大的块,则需要较少的位来寻址4GB.例如,如果您寻址每个512字 ..
发布时间:2020-05-08 20:19:52 其他开发

什么是PC相对寻址,如何在MASM中使用它?

我正在关注Jack Crenshaw的编译器教程(如果您看一下我的个人资料,这就是我所有关于大声笑的问题),并且到了引入变量的地步.他评论说68k要求所有内容都是“位置无关的",这意味着它是“相对于PC的".我知道PC是程序计数器,而在x86上是EIP.但是他使用的语法类似于MOVE X(PC),D0,其中X是变量名.我已经读了一些书,以后再说在.data中声明一个变量也没有说什么.这是如何运作的 ..
发布时间:2020-05-06 09:09:00 其他开发

使用引用访问类对象C ++

这一个让我陷入困境。我想做的是在包装类中获取一个引用变量,指向它包装的类中的struct对象,以便从使用包装类的其他类的结构中的变量的任何设置实际上设置在包装类不是wrappper类。为了做到这一点,我试图简单地创建一个引用在wrap类中的包裹类中的结构如 class CClassWrap { CClass :: plot_type& PlotArgs; } 然后 ..
发布时间:2016-10-21 00:06:11 C/C++开发

从接口调用活动的方法

是否有可能调用在活动从 ListAdapter ?定义马托 (我想在列表的一行按钮键,单击此按钮时,它应该执行方法,那就是在当前的活动定义的。我试着设置 onClickListener 在我的 ListAdapter ,但我不知道该怎么调用此方法,什么是它的路径...) 当我用 Activity.this.method()我收到以下错误: 的活动类型没有封闭实例处于范围访问 你知道吗 ..
发布时间:2015-12-01 16:39:31 移动开发

绝对寻址运行时code置换的x86_64

我目前使用的一些code替代方案,32位,其中code被移动到另一个位置,读取变量和类的指针。由于x86_64的不支持绝对地址,我有麻烦了变量的正确地址为的code中的新位置。详细的问题是,由于裂口相对寻址指令指针地址,它是不是在编译时不同。 那么,有没有一种方法,使用绝对地址,在x86_64的或另一种方式来获得相关变量不是指令指针的地址? 是这样的: leaq变量(%% RAX),%% RB ..
发布时间:2015-11-28 12:14:07 其他开发