Resultados de la búsqueda a petición "x86-64"

2 la respuesta

Problema para cambiar al modo v8086 desde el modo protegido de 32 bits configurando EFLAGS.VM en 1

Estoy en modo protegido de 32 bits ejecutándose en el nivel de privilegio actual (CPL = 0). Estoy tratando de ingresar al modo v8086 estableciendo el indicador EFLAGS.VM (Bit 17) en 1 (y IOPL en 0) y haciendo un FAR JMP en mi código de modo real ...

1 la respuesta

¿Por qué el sonido metálico produce asm ineficiente con -O0 (para esta simple suma de coma flotante)?

Desarmo este código en llvm clang Apple LLVM versión 8.0.0 (clang-800.0.42.1): int main() { float a=0.151234; float b=0.2; float c=a+b; printf("%f", c); } Compilé sin especificaciones -O, pero también intenté con -O0 (da lo mismo) y -O2 (en ...

1 la respuesta

@rbp no está permitido como base SIB?

Soy bastante nuevo en la codificación binaria x86-64. Estoy tratando de arreglar un viejo código de "ensamblador". e todos modos, estoy tratando de hacer algo como esto (sintaxis Intel): mov [rbp+rcx], al El ensamblador está generando esto ...

1 la respuesta

¿Cuál es la diferencia entre las instrucciones x86-64 AT&T movq y movabsq?

Despues de leeresta respuesta de desbordamiento de pila [https://stackoverflow.com/questions/40315803/difference-between-movq-and-movabsq-in-x86-64] yeste document [https://www.cs.cmu.edu/~fp/courses/15213-s07/misc/asm64-handout.pdf], Todavía no ...

1 la respuesta

¿Cómo mover el doble en% rax a la posición particular de qword en% ymm o% zmm? (Kaby Lake o posterior)

La idea es que me gustaría recopilar los valores devueltos dedouble en un registro vectorial para procesar para la máquinaimm width a la vezsi almacenar de nuevo en la memoria primero. l procesamiento particular es unvfma con otros dos ...

3 la respuesta

nsamblaje intrigante para comparar std :: opcional de tipos primitivos

Valgrind recogió una ráfaga El salto o movimiento condicional depende de los valores no inicializados en una de mis pruebas unitarias. l inspeccionar el ensamblaje, me di cuenta de que el siguiente código: bool operator==(MyType const& left, ...

1 la respuesta

¿Qué consideraciones hay para predecir la latencia de las operaciones en procesadores superescalares modernos y cómo puedo calcularlas a mano?

Quiero poder predecir, a mano, exactamente cuánto tiempo aritmética arbitraria (es decir, sin ramificación o memoria, aunque eso también sería bueno) El código de ensamblaje x86-64 tomará dada una arquitectura particular, teniendo en cuenta el ...

2 la respuesta

¿Por qué el compilador reserva un poco de espacio en la pila pero no todo el tamaño de la matriz?

El siguiente código int main() { int arr[120]; return arr[0]; } Compila en esto: sub rsp, 360 mov eax, DWORD PTR [rsp-480] add rsp, 360 ret Sabiendo que las entradas son de 4 bytes y la matriz tiene un tamaño de 120, la matriz debe tomar 480 ...

1 la respuesta

glibc scanf Fallos de segmentación cuando se llama desde una función que no alinea RSP

Al compilar el siguiente código: global main extern printf, scanf section .data msg: db "Enter a number: ",10,0 format:db "%d",0 section .bss number resb 4 section .text main: mov rdi, msg mov al, 0 call printf mov rsi, number mov rdi, format ...

3 la respuesta

¿Cómo obtener valores de argumentos usando el ensamblaje en línea en C sin Glibc?

¿Cómo obtener valores de argumentos usando el ensamblaje en línea en C sin Glibc? i requiero este código paraLinux archecturex86_64 yi386. si sabes sobreMAC OS X oWindows, también envíe y por favor guíe. void exit(int code) { //This function ...