崩溃的fpu指令和asm代码不起作用
crash on fpu instructions and asm code do not work

抱歉我的弱英语我试图提高我的asm能力,我已经找到了通过使用c代码的机器代码例程来处理它的简单入口点我正在以这样的方式使用它...

获取x86当前时间的说明
Instruction to get the current time on x86

是否有x86指令来获取当前时间? 基本上......就像是clock_get_time的替代品...具有最小开销的东西......我真的不在乎...

在这个x86指令中%r11d中的d引用了什么?
What does d refer to in %r11d in this x86 instruction?

我有一个函数fn(),它在堆栈上分配一个64字节的缓冲区,然后调用gets函数。 注意:我使用gets来覆盖堆栈上的返回地址。 void fn(){char ...

我可以用1,2,4个字节写多少个符号?
How many symbols I can write in 1,2,4 bytes? asm

我正在学习asm,我知道如果我想从键盘上取一个数字,我可以这么简单:inputarea db 3 DUP(''),'$'mov啊,0Ah mov dx,offset inputarea int 21h In这种情况,我可以......

align 8是否使inc命令的步长为8?
Does align 8 make the inc command to be by steps of 8?

在检查wget的程序集时,我看到了这个,这是我假设的打包器的开始:UPX1:004ED812对齐8 UPX1:004ED818 UPX1:004ED818 loc_4ED818:...

装配 - 使用标签的jmp条件
Assembly - jmp condition using label

在下一个代码中:Gloat:mov eax,0 jmp [(ebx * 4)+ Tab]选项卡:dd F4 dd F3 dd F2 dd F1 F1:添加eax,4 F2:添加eax,4 F3:添加eax,4 F4 :...

将16字节字符串与SSE进行比较
Compare 16 byte strings with SSE

我有16个字节的'字符串'(它们可能更短但你可以假设它们在末尾用零填充),但你可能不认为它们是16字节对齐的(至少不是总是)。 怎么写...

基于Win NT的OS中的环级别转换
Ring level shift in Win NT based OS

任何人都可以告诉我Windows操作系统中是否有权限更改。 我知道用户模式代码(RL:3)将参数传递给API。 这些API调用内核代码(RL:1)。 但现在我想......

在标签分配x86期间使用PTR
use of PTR during label assignment x86

所以我已经拆解了一个小的c ++程序(自从我开始学习以来已经学习了很多关于汇编的东西),并且汇编在主程序顶部做的第一件事就是var_E4 = ...

此ASM功能的参数在哪里?
Where are the arguments at this ASM function?

我有这个拆卸功能:PUSH EBP MOV EBP,ESP SUB ESP,C PUSH 408506 MOV EAX,DWORD PTR FS:[0] PUSH EAX MOV DWORD PTR FS:[0],ESP SUB ESP,14 PUSH EBX PUSH ......

OS X上的NASM使用位,而不是字节
NASM on OS X work with bit, not byte

我正在研究我的第一个NASM程序,在试图弄清楚not指令的时候,我意识到它没有反转第0位,而是反转字节00000000.我怎么告诉它......

因子大会x86
Factorial Assembly x86

我有这个汇编代码(Linux 32Bit用gcc -m32编译),我真的不明白为什么我的程序不起作用。 .data .bla:.ascii“%d \ n \ 0”.globl main .text ...

在计算一系列的总和(x86汇编)时,我的算法出了什么问题?
What is wrong with my algorithm when calculating the sum of a series (x86 Assembly)?

我正在尝试使用以下公式得到一系列的总和:((endNum *(endNum + 1)/ 2) - ((startNum *(startNum - 1)/ 2)第一部分似乎正常工作,但是当我......

找出在x86 bootloader中引导的驱动器
Finding out which drive was booted in x86 bootloader

我正在为x86编写游戏引导程序。 有一次,在启动的早期,我需要将启动驱动器中的一些扇区加载到内存中。 我用中断0x13(啊= 02)执行此操作,当我在我的...中尝试时

将十进制数转换为半字节中的二进制形式
converts decimal number to its binary form in nibbles

这是我的代码,程序应该要求一个介于0-65,535之间的数字,它应该输出小数形式的半字节.model small .data prompt db“在区间[0,65535]中输入一个整数:$”,0 .. 。

x86英特尔汇编程序LEA
x86 Intel Assembler LEA

看下面的代码:(ebp-0x8 - > int)(ebp-0x4 - > int *)=> 0x80483f3 <main + 6>:mov DWORD PTR [ebp-0x8],0x0 0x80483fa <main + 13>:mov DWORD PTR [ebp-0x4],0x0 ......

内联(x86)程序集如何影响程序流?
How does inline (x86) assembly affect the program flow?

我试图了解在运行时如何调用这些片段:__ asm {PUSH ES MOV CX,0 // ...更多x86汇编}; 不会调整寄存器会破坏程序流程执行吗?...

变量与gdb中的奇怪值
Variable with weird value in gdb

我有点'noob',但我不明白为什么“打印WeirdValue”使用此代码返回“16777216”(1000000000000000000000000):section .data Var db 0 WeirdValue db 0 when section ....

程序集MASM将乘法结果加到sum中
Assembly MASM adding multiplication result to sum

我找到一种方法将乘法结果添加到总和中有一点问题。 假设我们只能使用寄存器(没有内存变量),我不知道我怎么能......

将O2优化的for-loop从装配转换为C.
Translating O2 optimized for-loop from assembly to C

这是一个家庭作业问题。 我试图从以下汇编代码(x86 linux机器,使用gcc -O2优化编译)获取信息。 我评论了每个部分,以显示...

x86_64 CPU是否使用相同的缓存行通过共享内存在两个进程之间进行通信?
Does x86_64 CPU use the same cache lines for communicate between 2 processes via shared memory?

众所周知,现代x86_64上的所有级别的高速缓存L1 / L2 / L3都被虚拟索引,进行物理标记。 并且所有内核通过使用缓存一致性协议MOESI / MESIF通过Last Level Cache - cache-L3进行通信...

as8088中的变量初始化
Variable initialization in as8088

我目前正在编写一个函数,基本上只需将字符串中的字符写入变量。 执行测试打印时,我的变量似乎很好。 但是当我试图打印第一个......

打印第二个命令行参数
Print 2nd command line argument

我正在编写一个打印出程序第二个参数的代码。 据我所知,ebp + 8持有参数个数,ebp + 12保存程序名称的地址等。 到目前为止,我有:%include“asm_io ....

如何使用SSE逻辑指令
How to use SSE logical instructions

我需要一些关于如何在Visual Studio上使用SSE逻辑指令的帮助。 基于MSDN网站,__ m128 _mm_and_ps(__ m128 a,__ m128 b); ANDPS可用于执行逻辑AND ...

A2032:无效使用寄存器
A2032: Invalid use of register

我有一行汇编,如下所示:mov target [sizeof source - ecx],byte ptr ebx但是,我收到错误A2032:无效使用寄存器据我所知,我什么也没做。 ..

ASM字符串使代码损坏
ASM strings get code corrupted

我有一个简单的16位汇编如下:push bx StrVar db“My string!”,0 push ax ..其他代码..我正在尝试用NASM编译它,但我有一个问题..如果我的字符串与......

InterlockedExchange()类型函数/内在函数的MSDN文档不一致?
Inconsistent MSDN documentation for InterlockedExchange() type functions/intrinsics?

首先,我们有InterlockedExchange64(); http://msdn.microsoft.com/en-us/library/windows/desktop/ms683593%28v=vs.85%29.aspx LONGLONG __cdecl InterlockedExchange64(__ inout LONGLONG volatile * Target,...

使用Intel x86 Assembly在Unix上手动Null-Termination(内存操作数中的地址与值)?
Manual Null-Termination on Unix using Intel x86 Assembly (address vs value in memory operands)?

我必须在这里遗漏一些明显的东西,但我似乎找不到字符串的结尾。 我的代码从一些调用开始,如下所示: 读取用户输入; mov eax,SYSCALL_READ ......

x86-assembly中的递归函数
Recursive function in x86-assembly

我在x86汇编代码中有一个方法方法(int a,int b):方法:pushl%ebx subl $ 24,%esp movl 32(%esp),%ebx movl 36(%esp),%edx movl $ 1,%eax testl%edx,%edx je ...

bootsector比较总是错误的
bootsector compare always wrong

在您帮助我完成hlt指令后(我忘记了明确的中断cli),我发现了另一个问题。 比较始终清除进位标志,无论缓冲区是否等于正确的密码,在......

在集会中
je to jne in assembly

我正在拆卸具有以下je功能的代码:0F 84 FF 00 00 00:je loc_00000105我被指示通过将je修改为j来绕过比较功能。 这是一个奇怪的案例,因为......

多个命令grep
multiple commands grep

我想在文件gdb.txt中搜索以下汇编表达式:调用DWORD PTR [EDI]但是执行grep -e“调用DWORD PTR [EDI]”-f gdb.txt不会返回任何内容。 想法?

写入比在x86上读取更快?
Write is faster than read on x86?

我在Intel机器上观察到一些非常奇怪的读写访问性能。 我写了一个首先分配数组的C程序。 该程序的代码是[1]; 你可以通过运行来编译它...

无法理解Kip Irvine的汇编语言书中的存储分配
Trouble understanding storage allocation in Kip Irvine's assembly language book

我读过Kip Irvine的x86汇编语言一书。 在第85页,他写了以下关于使用符号的原因:使用DUP运算符:第3.4.4节展示了如何使用DUP运算符...

x86汇编中的符号扩展领先零点?
Leading Zero in Sign Extension in x86 Assembly?

我阅读了Kip IRVINE的x86处理器汇编语言一书,他写道:将较小的值复制到较大的值虽然MOV不能直接将数据从较小的操作数复制到较大的操作数,但......

在单独分配的堆栈上运行函数
Running a function on a separately allocated stack

我试图在单独分配的堆栈上运行一个函数。 我想保留堆栈以便以后我可以恢复它并恢复功能。 以下代码编译并运行,但没有...

一些intersectRaySphere c程序optymization通过将其重写为x86 asm(如何?)
some intersectRaySphere c procedure optymization through rewriting it to x86 asm (How?)

Hullo,我对汇编没有多少了解,我正在考虑如何通过在x86(32位fpu或sse2)程序集中重写它来优化它,应该优化的东西 - 重写正确...

如何在AT&T组件中将具有双精度的80位浮点数从内存移动到XMM0
How can I move an 80-bit floating point number with double precision from memory to XMM0 in AT&T assembly

我写了一个AT&T汇编函数来计算积分。 我需要将它作为返回值传递,因为它是用C编写的代码调用的。我已经成功地将它作为单个返回...

字符串连接NASM
String concatenation NASM

我试图将两个字符串连接到另一个字符串,以尝试在汇编中的FizzBu​​zz实现。 我的数据库值看起来像这样:buffer:times 10 db 0 fizz:db“...

CLFLUSH在虚拟化环境中
CLFLUSH in virtualization environment

我已经阅读了有关Intel x86机器的CLFLUSH指令的文档。 我知道CLFLUSH m8意味着如果我在...内运行指令,则刷新包含线性地址m8的缓存行。

程序集中无法访问的代码
Unreachable code in assembly

我正在调试linux中的崩溃,并且正在进行函数cxa_finalize的汇编。崩溃发生在看似无法访问的源代码行上:cmp%edx,%esi // f> =&...

8086汇编 - 划分溢出
8086 assembly - divide overflow

我尝试在汇编中进行简单的除法,但是我得到“除法溢出”错误。 我的简单代码:cs:sum和cs:num是一个字节变量。 (db)mov ax,word ptr cs:sum mov cl,10 xor dx,dx div cl; ...

在汇编x86 ia-32中读取文件
read file in assembly x86 ia-32

我正在尝试读取程序集中的文件(x86,IA-32),我发现这个例子:mov ebx,eax mov al,0x3 mov edi,esp mov ecx,edi xor edx,edx mov dh,0xff mov dl, 0xff int 0x80在eax中的位置(首先...

如何比较x86中的地址
How to compare addresses in x86

下面是一个x86程序,用于从数字列表中查找最大数量。 当达到结束地址时,我试图退出循环。 (它在源代码中标有data_ends:label)。 #...

为什么间接寻址中的索引器必须是dword?
Why does the indexer in indirect addressing have to be a dword?

为什么间接寻址中的索引器必须是dword? 例如,这不起作用:.data arr dword 10 dup(?)。code ... mov bx,2 call [arr + bx * 4] ;;错误A2032:无效使用寄存器...

在DOS中直接将文本读入堆栈
Reading text directly into stack in DOS

我正在学习汇编程序(16位DOS上的TASM)并尝试使用0Ah DOS服务将文本直接读入堆栈。 它在emu8086中运行得很好,而当我用实际的TASM运行它时 - 它不会给...

为什么为我的C程序生成的机器代码与本书中给出的不同?
Why is the machine code generated for my C program different from what is given in the book?

我在Richard Blum的专业汇编语言一书中找到了这个文本。 编译步骤将文本编程语言语句转换为执行所需的指令代码......

在x86软件中断期间,何时进行上下文切换?
During an x86 software interrupt, when exactly is a context switch made?

我问这个是因为我试图在我的玩具内核中实现中断。 所以,我知道当发生中断时,CPU会将各种信息推送到堆栈中。 然而,到处都是......
1 2 3 4 5 6 7 81 82