Где-то в инете читал, что перед переходом на 0x7c00 BIOS загружает в %dl "номер диска" загружаемого устройства. Но что это за «номер диска»? Каждое устройство, подключенное к компьютеру...
У меня следующие вопросы относительно относительных переходов: Я так понимаю, что JMP SHORT будет переходить на байт относительно текущего ПК. Это правильно?
Это...
Я получаю следующую строку на дизассемблере от objdump -d программы x86 linux... 4000b0: ba 0e 00 00 00 mov $0xe,%edx Я пытаюсь понять, как машинный код "ba 0e 00 00...
У меня есть проект, связанный с написанным вручную -ассемблером — синтаксис AT&T, отлично работает с GCC, но я не делал этого, к тому же я очень мало знаю о ассемблере — который обнаруживает странную проблему при попытке его сборки…
Я просто не понимаю. Любое руководство слишком техническое. Что такое плоская и сегментированная память? Способы адресации памяти, способы организации байтов в памяти? Какой из них лучше всего подходит для 32-битных компьютеров? Может...
новый парень здесь, и у меня уже есть вопрос. Я адаптирую пример кода, используемый в книгах по сборке Джеффа Дунтеманна, и я хочу распечатать целочисленное значение, хранящееся в регистре данных, на терминал? Что...
Я играю с одним примером переполнения стека. Этот пример выглядит так: void return_input (void){ char array[30]; получает (массив); printf("%s\n", массив); } main() { ...
Какой язык ассемблера я должен изучать в качестве первого языка ассемблера? MIPS ( проще и часто используется в образовательных целях), Intel x86 (вездесущий) или переносимый язык ассемблера, лежащий в основе LLVM...
Итак, я пишу игру на c++ для MS-DOS и добавляю встроенный ассемблер для ускорения. Этот конкретный блок кода рисует звезду в видеопамяти (0A000h). Проблема с моим кодом в том, что...
У меня есть образец исходного кода для OpenGL, я хотел скомпилировать 64-битную версию (используя Delphi XE2), но есть код ASM, который не компилируется, а я ничего не знаю об ASM. Вот код ниже, ...
Вы можете посмотреть Википедию или краткое изложение для студентов. Все говорят, что есть две инструкции для одного и того же. Но никто не говорит, почему?
Я не могу найти никакой информации на agner.org о задержке или пропускной способности инструкции RDRAND. Однако этот процессор существует, поэтому информация должна быть там. Изменить: На самом деле самый новый ...
Я использую STM32F4 и пытаюсь написать ASM-функцию, вызываемую изнутри
C. Функция должна вызываться внутри функции C, которая также находится в прерывании.
Я толкаю и выталкиваю r4-r7. Делайте...
На платформах Intel BP используется для указания на начало кадра стека и для доступа к аргументам [bp+0x??] и локальным переменным [bp-0x??]. Какой регистр используется в ARM? Или адресация...
На большинстве современных 64-разрядных процессорах (таких как Intel Core 2 Duo или Intel серии i7) зависит ли скорость выполнения команды x86_64 mulq и ее вариантов от операндов? Например, умножение 11 * ...
Мне нужно найти пересечение двух отсортированных целочисленных массивов и сделать это очень быстро. Прямо сейчас я использую следующий код: int i = 0, j = 0; в то время как (i < arr1.Count && j < arr2.Count)
...
Наряду с введением AVX Intel представила схему кодирования VEX в архитектуре Intel 64 и IA-32. Эта схема кодирования используется в основном с инструкциями AVX. Мне было интересно, если это...
Я только изучаю ассемблер и навыки отладки в OllyDbg, чтобы научиться использовать недокументированные функции. Теперь у меня возникла следующая проблема: у меня есть следующая часть кода (от OllyDbg):
...
Насколько я понимаю, 1 байт будет содержать число от 0 до 255. И что 16-битное число находится в диапазоне 0-65535. Если я пытаюсь представить 16-битное число с помощью двух отдельных 8-битных регистров... как мне это сделать? ...
Я заметил, что в сборке сегменты используются в опкодах. Пример: MOV DWORD PTR SS:[EBP-30],30 Я думаю, что "PTR SS:" используется для указания того, что EBP-30 исходит из стека? (SS: сегмент стека)
Я...
Я обнаружил, что != и == не самые быстрые способы проверки нуля или не нуля. bool nonZero1 = целое число != 0;
xor eax, eax
тест еккс, еккс
setne al bool nonZero2 = integer < 0 || целое число > ...
В настоящее время я предлагаю услугу компиляции сборки для некоторых людей. Они могут ввести свой ассемблерный код в онлайн-редактор и скомпилировать его. Когда затем компилируется, код отправляется на мой сервер с ...
Итак, я знаю, какими должны быть следующие регистры и их использование: CS = Сегмент кода (используется для IP)
DS = сегмент данных (используется для MOV)
ES = Сегмент назначения (используется для MOVS и т. д.)
SS = стек ...
Я разрабатываю приложение, производительность которого критична. Я хочу, чтобы GCC переводил некоторые конкретные вызовы memset() как инструкцию с повторным префиксом, например "rep stos QWORD PTR es:[rdi],rax". GCC ...
Я экспериментировал с переполнением буфера в системе FreeBSD. В качестве первого эксперимента я попытался заставить эксплуатируемую программу запустить другой процесс (в данном случае /bin/hostname). Вот и все...
Проблема
Существуют ли какие-либо вычислительно осуществимые подходы к внутрирегистративной дедупликации набора целых чисел с использованием инструкций simD x86? Пример
У нас есть 4-кортежный регистр R1 = {3,9, 2, 9} и ...
кто-то показал мне несколько лет назад следующую команду для обнуления переменной. xor i, i Он сказал мне, что это быстрее, чем просто присвоить ему ноль.
Это правда?
Производят ли компиляторы оптимизацию, чтобы получить ...