Вопросы с тегом 'x86-64'

x86-64 - это 64-битное расширение для архитектуры Intel x86
2

Разница в производительности между Windows и Linux при использовании компилятора Intel: взгляд на сборку

Я запускаю программу на Windows и Linux (x86-64). Он был скомпилирован с тем же компилятором (Intel Parallel Studio XE 2017) с теми же параметрами, и версия для Windows в 3 раза быстрее, чем версия для Linux. Виновником является вызов std::erf, котор...
10 нояб. '16 в 8:18
4

Почему построение std:: optional <int> дороже, чем std:: pair <int, bool>?

Рассмотрим эти два подхода, которые могут представлять "необязательный int": using std_optional_int = std::optional<int>; using my_optional_int = std::pair<int, bool>; Учитывая эти две функции... auto get_std_optional_int() -> std...
03 окт. '17 в 11:55
7

Почему в 64-битных системах имеется только 48-битное адресное пространство?

В книге я прочитал следующее: 32-разрядные процессоры имеют 2 ^ 32 возможных адреса, а текущие 64-разрядные процессоры имеют 48-битное адресное пространство Мое ожидание состояло в том, что если это 64-разрядный процессор, адресное пространство т...
16 июл. '11 в 11:09
1

Почему GCC вызывает libc sqrt() без использования его результата?

Используя GCC 6.3, следующий код С++: #include <cmath> #include <iostream> void norm(double r, double i) { double n = std::sqrt(r * r + i * i); std::cout << "norm = " << n; } генерирует следующую сборку x86-64: no...
09 апр. '17 в 4:36
4

Каковы имена новых регистров процессоров X86_64?

Где я могу найти имена новых регистров для сборки в этой архитектуре? Я имею в виду регистры в X86, такие как EAX, ESP, EBX и т.д. Но я бы хотел их на 64-битной версии. Я не думаю, что они такие же, как когда я разбираю свой код на C, я получаю r в...
18 нояб. '09 в 4:17
5

Изучить сборку - следует ли начать с 32-битного или 64-битного?

Я действительно хочу изучить ассемблер. Я довольно хорошо разбираюсь в с /c++, но хочу лучшего понимания того, что происходит на более низком уровне. Я понимаю, что вопросы, связанные со сборкой, задавались ранее, но я просто ищу направление, специ...
28 февр. '10 в 18:19
3

Синтаксис gcc для компиляции 32-битных программ на 64-битной платформе

У меня есть проприетарная программа, которую я пытаюсь использовать на 64-битной системе. Когда я запускаю настройку, он работает нормально, но после этого пытается обновить себя и скомпилировать некоторые модули, и он не сможет их загрузить. Я под...
17 авг. '10 в 8:45
6

В чем разница между x64 и IA-64?

Я был на сайте Microsoft и заметил два разных установщика, один для x64 и один для IA-64. Ссылка: Установка .NET Framework 4.5, 4.5.1 Насколько я понимаю, IA-64 является подклассом x64, поэтому мне любопытно, почему у него будет отдельный установщи...
09 авг. '12 в 23:19
1

Попросите gdb перечислить все функции в программе

Как вы можете перечислить все функции в программе с помощью gdb?
21 мая '12 в 6:53
5

Где я могу найти полный список инструкций по сборке x86_64?

Я занимаюсь лабораторией для класса comp sci, который включает в себя "разрядку бинарной бомбы", в основном обратную разработку программы для получения 6 "паролей". Я просто искал список всех инструкций в одном удобном для чтения месте.
15 сент. '08 в 22:19
1

x86_64 регистрирует rax/eax/ax/al, перезаписывая полное содержимое регистра

Как широко рекламируется, современные процессоры x86_64 имеют 64-разрядные регистры, которые могут использоваться в обратном режиме, как 32-разрядные регистры, 16-разрядные регистры и даже 8-битные регистры, например: 0x1122334455667788 ==========...
22 авг. '14 в 20:57
2

Как работает malloc в многопоточной среде?

Является ли типичный malloc (для платформы x86-64 и ОС Linux) наивно блокировать мьютексы в начале и выпускать его по завершении или блокирует мьютекс более умным способом на более тонком уровне, так что ограничение конкуренции сокращено? Если он де...
22 мая '12 в 16:50
2

Как может objdump испускать синтаксис intel

Как я могу сказать objdump испускать сборку в синтаксисе Intel вместо синтаксиса AT & T по умолчанию?
28 апр. '12 в 10:22
19

Портирование 32-битного кода на С++ до 64 бит - это того стоит? Зачем?

Мне известно о некоторых очевидных преимуществах архитектуры x64 (более высокие адресные адреса RAM и т.д.)... но: Что делать, если моя программа не нуждается в реальной работе в 64-разрядном режиме. Должен ли я его портировать? Есть ли предвидимы...
25 сент. '09 в 23:24
3

Являются ли атомарные переменные блокируемыми?

Когда мы говорим об атомных переменных, таких как С++ 11 atomic<>, свободен ли он? Или что-то другое? Если я буду управлять очередью с помощью атомных переменных, будет ли она медленнее, чем свободная от очереди очередь?
11 апр. '12 в 13:30