x86-64

¿Por qué la introducción de instrucciones MOV inútiles acelerar un bucle apretado en el montaje x86 64?

Antecedentes: Mientras optimizaba un código Pascal con lenguaje ensamblador incrustado, noté una instrucción MOV innecesari ... as, y una desaceleración en otras? ¿Es este comportamiento algo que podría ser explotado previsiblemente por un compilador?

Cuáles son las convenciones de llamadas para llamadas al sistema UNIX y Linux en i386 y x86-64

Los siguientes enlaces explican las convenciones de llamadas al sistema x86-32 tanto para UNIX (tipo BSD) como para Linux: ... handbook/x86-system-calls.html Pero, ¿cuáles son las convenciones de llamadas al sistema x86-64 tanto en UNIX como en Linux?

Dirigido tanto a 32 bits como a 64 bits con Visual Studio en la misma solución / proyecto

Tengo un pequeño dilema sobre cómo configurar mis compilaciones de visual studio para multi-targeting. Background: c#. NET v ... o cualquier otra utilidad), o se puede resolver dentro de la misma .msi? Cualquier idea y/o recomendación sería bienvenida.

¿Por qué es feo x86? ¿Por qué se considera inferior cuando se compara con otros? [cerrado]

Recientemente he estado leyendo algunos archivos SO y he encontrado declaraciones contra la arquitectura x86. ¿Por qué nec ... estoy familiarizado. Puede alguien amablemente darme razones para considerar x86 feo/malo/inferior en comparación con otros.

Cálculos de punto flotante vs enteros en hardware moderno

Estoy haciendo un trabajo crítico de rendimiento en C++, y actualmente estamos usando cálculos enteros para problemas que son ... espués. De todos modos, gracias por todas sus excelentes respuestas y ayuda. Siéntase libre de añadir cualquier otra cosa:).

¿Por qué las instrucciones x86-64 en los registros de 32 bits ponen cero la parte superior del registro completo de 64 bits?

En el x86-64 Recorrido de los Manuales de Intel , leí Quizás el hecho más sorprendente es que una instrucción como MOV E ... A primera vista parece ilógico (pero la razón podría ser que estoy acostumbrado a las peculiaridades de la asamblea x86-32).

¿Qué significa "rep; nop;" en el ensamblaje x86? ¿Es lo mismo que la instrucción de "pausa"?

¿Qué significa rep; nop? ¿Es lo mismo que pause la instrucción? ¿Es lo mismo que rep nop (sin el punto y coma)? ¿Cuál es ... OP (PAUSE) is a good thing to insert into busy-wait loops. */ También se está utilizando en BeRTOS, con el mismo comentario.

¿Por qué la construcción de std::opcional es más cara que un par std::?

Considere estos dos enfoques que pueden representar una " opción int": using std_optional_int = std::optional<int>; us ... s en: main: mov DWORD PTR a[rip], 42 xor eax, eax mov DWORD PTR b[rip], 42 ret

Para aprender a ensamblar, ¿debo comenzar con 32 bits o 64 bits?

Realmente quiero aprender a ensamblar. Soy bastante bueno en c / c++, pero quiero una mejor comprensión de lo que está pasand ... r algo de eso para comenzar a pensar en cómo funcionan las CPU y por qué podría hacer algo de una manera en lugar de otra.)

¿Por qué los sistemas x86-64 tienen solo un espacio de direcciones virtuales de 48 bits?

En un libro leo lo siguiente: Los procesadores de 32 bits tienen 2^32 direcciones posibles, mientras que los procesadore ... dor de 64 bits, el espacio de direcciones también debe ser 2^64. Así que me preguntaba cuál es la razón de esta limitación?

¿Cuáles son los nombres de los nuevos registros de procesadores X86 64?

¿Dónde puedo encontrar los nombres de los nuevos registros para ensamblar en esta arquitectura? Me refiero a registros en X ... , etc. Pero me gustaría que en 64 bits. No creo que sean lo mismo que cuando desmonte mi código C, obtengo r en lugar de e.

¿Cómo funciona malloc en un entorno multiproceso?

¿El típico malloc (para la plataforma x86-64 y el sistema operativo Linux) bloquea ingenuamente un mutex al principio y lo l ... un nivel más fino, de modo que la contención de bloqueo se reduce? Si realmente lo hace de la segunda manera, ¿cómo lo hace?

Pida a GDB que enumere todas las funciones en un programa

¿Cómo puede enumerar todas las funciones en un programa con GDB?

x86 64 registros rax / eax/ax / al sobrescribiendo el contenido completo del registro [duplicado]

Esta pregunta ya tiene una respuesta aquí: ¿Por qué las instrucciones x86-64 en registros de 32 bits pon ... algún tipo de punto vital aquí sobre por qué se implementó como ¿eso? Una explicación sobre "por qué" sería muy apreciada.

Alineación de memoria: ¿cómo usar alignof / alignas?

Ahora mismo trabajo con memoria compartida. No puedo entender alignof y alignas. Cppreference no está claro: alignof devue ... lchado ? Stack overflow / las entradas de blogs tampoco están claras. Puede alguien explicar claramente alignof y alignas ?

¿Dónde puedo encontrar una Lista completa de Instrucciones de Montaje x86 64? [cerrado]

Estoy haciendo un laboratorio para una clase comp sci que implica "desactivar una bomba binaria", básicamente ingeniería inve ... un programa para obtener 6 "contraseñas."Solo estaba buscando una lista de todas las instrucciones en un lugar fácil de leer.

Cómo puede objdump emitir sintaxis intel

¿Cómo puedo decirle a objdump que emita ensamblado en sintaxis Intel en lugar de la sintaxis predeterminada de AT&T?

¿Cuál es el propósito de la instrucción "PAUSA" en x86?

Estoy tratando de crear una versión tonta de un bloqueo de giro. Navegando por la web, me encontré con una instrucción de ens ... ck overflow antes, pero la pregunta de violación del orden de memoria permanece sin respuesta (al menos para mi comprensión).

¿Las variables atómicas están libres de bloqueo?

Cuando hablamos de variables atómicas, como C++11 atomic<>, ¿está libre de bloqueo? ¿O es la libertad de bloqueo algo diferente? Si administro una cola con variables atómicas, ¿será más lenta que una cola sin bloqueos?

Portar código C++ de 32 bits a 64 bits - ¿vale la pena? ¿Por qué?

Soy consciente de algunas de las ganancias obvias de la arquitectura x64 (direcciones RAM direccionables superiores, etc.)... ... para finalizar el soporte de 32 bits? ¿Mi aplicación se ejecutaría más rápido / mejor / más seguro como código x64 nativo?