如何将十六进制序列毫无歧义地转换为汇编语言?

2023-12-09

8B EC 56 8B F4 68 00 70 40 00 FF 15 BC 82 40   

像上面这样的序列可以通过多种方式进行分段,每个段都可以翻译为相应的汇编指令,但是每个二进制可执行文件都有其唯一的确定的汇编,避免歧义的数学原理是什么?

UPDATE

得票最多的答案实际上根本没有回答我的问题。


知道你的出发点。

换句话说,给定指令的特定起始字节,指令结束的位置是明确的,从而为您提供下一条指令的起始字节并允许您继续。给定一个任意的内存块,如果不知道第一条指令从哪里开始,就不可能将其分解为单独的指令。

从更数学的角度来看,不存在其字节是另一有效指令的前缀的有效指令。因此,如果ab是有效的,那么你就知道ab cd不能有效,所以ab必须是一条指令并且cd是下一条指令的开始。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将十六进制序列毫无歧义地转换为汇编语言? 的相关文章

  • 将十进制转换为十六进制

    首先 这是家庭作业 我正在尝试将 5 位数字读入寄存器 bx 假定该数字不大于 65535 16 位 以下是我尝试这样做的方法 但是 当我尝试打印该号码时 我仅打印输入的最后一位数字 这让我猜测 当我向 bx 添加另一个数字时 它会覆盖以前
  • 如何将 asm 着色器编译为 fxo 文件?

    我有一个已编译的 fxo 着色器 我正在尝试对其进行稍微编辑 仅调整一些常量 使用 fxdis https code google com archive p fxdis d3d1x https code google com archiv
  • 如果默认禁用 A20 线,如何在 0xFFFFFFF0 处访问 BIOS ROM?

    我正在阅读有关 A20 线的信息http wiki osdev org A20 Line http wiki osdev org A20 Line 这似乎表明 A20 线默认被禁用 在Pentium上 如果硬复位后立即输出的地址为0xFFF
  • 如何在 AVX/AVX2 中递增向量

    我想使用内在函数来增加 SIMD 向量的元素 最简单的方法似乎是为每个元素加 1 如下所示 note vec inc之前已设置为1 vec mm256 add epi16 vec vec inc 但是是否有任何特殊指令来增加向量 类似于in
  • 如何在汇编中使用 ReadString?

    mov edx offset Prompt1 call WriteString mov ecx 32 mov edx offset String1 call ReadString 现在 我该如何访问String1 如何将其移入寄存器以便对其
  • 在共享库中不使用 PLT 的情况下调用另一个目标文件中的函数?

    我有两个汇编代码 code1 s and code2 s我想从这两个构建一个可重定位 使用 fPIC 开关 共享库 I want code2 s调用一个函数 名为myfun1 其定义在code1 s 当我使用call myfun1 PLT
  • x86:寄存器操作为内存内容和内存地址?

    寄存器 gt 内存地址 gt 内存内容 内存地址 gt 内存内容 上面的模型正确吗 而且 如果是的话 你能建议我是否认为正确吗 movl eax ebx gt 它将 eax 的内存地址移动到 ebx 这也会导致内容移动 movl eax e
  • 如何阅读英特尔操作码符号

    我正在阅读一些引用的材料Intel vol 2 SDM x86 手册 https www intel com content www us en developer articles technical intel sdm html关于汇编
  • 为什么这个函数在额外读取内存时运行速度如此之快?

    我目前正在尝试了解 x86 64 上某些循环的性能属性 特别是我的 Intel R Core TM i3 8145U CPU 2 10GHz 处理器 具体来说 在循环体内添加一条额外的指令来读取内存几乎可以使性能提高一倍 而细节并不是特别重
  • 跳转目的地太远:3 个字节

    我的循环有问题 其中包含的代码很长并且给了我错误jump destination too far by 3 byte s 当我删除时 mov edx offset str1 call writestring 这部分位于主过程下方 它不会给出
  • 原子 x86 指令与 MS 的 InterlockedCompareExchange 文档的对齐要求?

    微软提供了InterlockedCompareExchange http msdn microsoft com en us library ms683560 28VS 85 29 aspx用于执行原子比较和交换操作的函数 还有一个 Inte
  • 寻找有效的移位/加法/LEA 指令序列来乘以给定常量(避免 MUL/IMUL)

    我正在尝试编写一个 C 程序 mult c 它有一个接收 1 个 int 参数的 main 函数 用atoi argv 1 这是一些常数k我们想要乘以 该程序将生成一个汇编文件mult s实现 int mult int x return x
  • 气体:内存引用太多

    编译时指令如下 movl 4 ebp 8 ebp I got 内存引用过多 它出什么问题了 括号之前的数字是字节偏移量 这会导致发生内存引用 并且不能有两个movl 您需要先将值暂时移至寄存器 movl 4 ebp ecx movl ecx
  • 为什么 VC++ 编译器 MOV+PUSH args 而不是仅仅 PUSH 它们? x86

    在 VC 的反汇编中 正在进行函数调用 编译器在压入本地指针之前将其 MOV 到寄存器 memcpy nodeNewLocation pNode sizeCurrentNode 0041A5DA 8B 45 F8 mov eax dword
  • 对齐与未对齐 x86 SIMD 指令之间的选择

    SIMD指令一般有两种类型 A 使用对齐的内存地址 如果地址未在操作数大小边界上对齐 则会引发一般保护 GP 异常 movaps xmm0 xmmword ptr rax vmovaps ymm0 ymmword ptr rax vmova
  • nasm/ld“重定位被截断以适合:R_386_16”

    集会 BITS 16 global start start mov ax 0x07C0 mov ds ax mov si hw call print string jmp print string mov ah 0x0E char lods
  • 在 AT&T x86 程序集中查找转义字符

    问题一 我有以下汇编代码 其目的是循环输入字符串 并计算它遇到的转义字符 的数量 globl sprinter data escape string string num escape long 0 num characters long
  • 将 2 个数字与汇编进行比较[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我有以下代码 我想完成汇编代码 如下
  • Intel 和 AMD 处理器有相同的汇编程序吗?

    C语言被用来编写Unix以实现可移植性 使用不同编译器编译的同一个C语言程序会产生不同的机器指令 为什么 Windows 操作系统能够在两者上运行Intel https en wikipedia org wiki Intel and AMD
  • 编写一个新的 jit

    我有兴趣用 C 启动我自己的 JIT 项目 我对汇编或编译器设计等并不熟悉 但是 我对生成的机器代码格式非常不熟悉 比如 当一切都说了和完成后 mov 指令实际上是什么样子 是时候调用它了函数指针 那么 创建这样的东西的最佳资源是什么 编辑

随机推荐

  • pandas dataframe计算不稳定

    我想知道以前是否有人见过 Pandas 的这个问题 基本上 我试图逐个元素地对 DataFrames 进行加法 乘法和除法 所有框架都具有相同的索引和列 但 Pandas 对于连续执行的相同计算会输出不同的结果 下面显示了一些示例输出的图像
  • Qt 应用程序的可扩展绘制

    我正在编写嵌入式设备屏幕的模拟 其中包含主 QWidget 顶部的自定义小部件 虽然屏幕的本机大小是 800x600 但我希望能够通过拖动窗口的角落 如果不使用网格布局和拉伸器 不会向上 向下缩放字体 我如何完成这种缩放 我认为解决方案的一
  • {$var} 和 $var 有什么区别?

    我想知道何时以及为什么应该使用 var echo This is a test using var 以及何时 以及为什么 我应该使用简单的形式 var echo This is a test using var 当 a 不访问对象或数组来获
  • Xamarin 通过 WebView 进行 oauth

    几天来我一直在尝试在 Xamarin Forms 应用程序中实现 google OAuth 我有一个非常简单的XAML code
  • Bootstrap:更改单击时面板标题的颜色

    你好 昨晚我给自己上了一堂引导速成课 我玩得很开心 我在网上发现了一个可折叠面板 它非常适合我希望在导航栏中实现的目标 不过 我希望面板标题的背景颜色在展开时发生变化 我对 bootstrap 的内部工作原理还不够熟悉 还无法自己解决它 很
  • 以“/”结尾的字符串的正则表达式

    以 结尾的字符串的正则表达式如下 str match javascript syntax 但 让编译器认为这是一条注释 如何解决这个问题 你必须逃离最后的结局 所以解释器不认为它终止了 RegExp 文字 str match
  • 使用 csv 数据创建表

    给定一个 csv 其内容如下 Colour Red Black Blue Taste Good Bad Disgusting Smell Pleasant Deceptive Intolerable 我怎样才能用Python打印出来 让它看
  • Expressjs 中的两个应用程序

    我正在使用 Express js 构建一个应用程序 该应用程序将有不同的客户端 例如网络和移动客户端 我不想同时使用一个应用程序 因为某些中间件会带来额外的负担 比如会话中间件 那么一个项目是否可以有两个应用程序呢 它将如何运作 The a
  • Rails 3 + devise:如果注册表有错误,如何防止删除其他字段中的数据?

    我的设备注册表中有一个自定义字段 referral code 还有一个自定义注册控制器 这样我可以在注册后重定向到自定义 检查您的电子邮件 页面 一切正常 除非新用户在显示错误消息时犯了错误 例如密码 确认不匹配 它也会删除推荐代码字段 当
  • ASP.NET MVC 添加视图对话框关闭

    最近 我从事的一个大型项目开始出现 添加视图 对话框的问题 当点击Add Strongly typed View复选框时 旋转器第一次出现大约一两秒 然后整个对话框关闭并消失 如果我打开该对话框并再次单击该按钮 它就会再次快速关闭 该项目使
  • 将 mysql_query 转换为 $wpdb->get_results

    在服务器上更新 php 后 我的 mysql query 出现了一些问题 您的代码中有 2 个函数在当前版本的 PHP 中已被弃用 mysql fetch array mysql query global table prefix wpdb
  • 更新到最新版本的 CocoaPods?

    我在安装时遇到一些问题Alamofire 4 0进入我的项目 我有最新版本的Xcode 跑步Swift 3 当我尝试安装 alamofire 时 我收到了 800 个编译器错误 显然 构建 Alamofire 4 0 0 需要 CocoaP
  • 更新 JProgressBar

    我无法更新我的进度条 这是我的代码 Thread t new Thread new Runnable public void run int i 1 jProgBar setMinimum 0 jProgBar setMaximum 100
  • for(;;) 是什么意思?

    我很困惑for 构造 我认为这是无限 for 循环的一种简写形式 但我不能确定 这是代码 for whatever statements Your guess is correct it s an infinite loop This is
  • 为什么此 Firestore 事务冻结?

    下面的简单代码冻结了 要重现 只需替换this firestoreProvider with admin initializeApp firestore console log Init the cat const kittyRef thi
  • 操作栏检测片段中的后退按钮单击

    我有一个片段 其中启用了操作栏后退按钮 Code Override public void onAttach Activity activity super onAttach activity setHasOptionsMenu true
  • 使用另一个java程序编译一个java程序

    我想制作一个java程序 从文件中读取另一个java程序 编译它并显示错误和警告 我还想显示从文件读取并编译的程序的输出 我怎样才能做到这一点 看一眼javax tools JavaCompiler 从程序调用 Java 编程语言编译器的接
  • 如果清单 v3 中不允许当前选项卡 url,则阻止弹出窗口

    我正在编写一个 chrome 扩展 我想完全禁用弹出窗口 或者在 v3 清单不允许当前选项卡的 url 时显示一条消息host permissions财产 这是一个开发支持工具 我们不希望为生产 URL 启用它 所以如果我设置 host p
  • 将内容放入 HttpResponseMessage 对象中?

    几个月前 微软决定更改 HttpResponseMessage 类 以前 您可以简单地将数据类型传递到构造函数中 然后使用该数据返回消息 但现在不行了 现在 您需要使用 Content 属性来设置消息的内容 问题是它是 HttpConten
  • 如何将十六进制序列毫无歧义地转换为汇编语言?

    8B EC 56 8B F4 68 00 70 40 00 FF 15 BC 82 40 像上面这样的序列可以通过多种方式进行分段 每个段都可以翻译为相应的汇编指令 但是每个二进制可执行文件都有其唯一的确定的汇编 避免歧义的数学原理是什么