- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我知道可执行文件包含指令,但这些指令到底是什么?如果我想调用MessageBox
以 API 函数为例,指令是什么样的?
谢谢。
最佳答案
Executables是操作系统可以理解的二进制文件。可执行文件将包含其中包含数据的部分。 Windows 使用 PE format . PE 格式有一个部分有 machine指示。这些指令只是按顺序排列的数字,CPU 可以理解。
对 MessageBox() 的函数调用将是一系列指令,这些指令将
1)具有DLL中的函数地址。这个地址是编译器输入的
2) 将参数“插入”堆栈的指令
3)实际的函数调用
4)某种清理(取决于调用约定)。
重要的是要记住 EXE 文件只是特殊格式的文件。我没有反汇编,但您可以尝试编译您的代码,然后在 Visual Studio 中打开您的 EXE 以查看反汇编。
关于binary - 可执行文件究竟是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1616772/
Feel free to skip straight to TL/DR if you're not interested in details of the question 简短的序言: 我最近决定
我一直在阅读 A Tour of Go学习Go-Lang到目前为止一切顺利。 我目前在 Struct Fields类(class),这是右侧的示例代码: package main import "fm
Last time I got confused顺便说一下PowerShell急切地展开集合,基思总结了它的启发式如下: Putting the results (an array) within a
我是一名优秀的程序员,十分优秀!