0
ответов

Получение максимального значения в векторе __m128i с помощью SSE?

Я только начал использовать SSE и не понимаю, как получить максимальное целочисленное значение (max) __m128i. Например: __m128i t = _mm_setr_ps(0,1,2,3); // макс(т) = 3; Поиски привели меня к...
вопрос задан: 17 September 2015 13:42
0
ответов

Как отладчики гарантируют корректность, когда используя программную точку останова INT 3 (0xCC), даже если инструкция была исправлена?

Я читал, что INT 3 (0xCC) используется для программных точек останова. Он устанавливается (например) отладчиком путем перезаписи фактического программного кода в памяти. Я также читал, что INT 3 - это "ловушка", а не "...
вопрос задан: 27 August 2015 07:38
0
ответов

Почему в сборке x86 команда leave выполняет «mov esp, ebp»?

Говорят, что инструкция выхода такая же, как: mov esp, ebp pop ebp Но для чего здесь mov esp, ebp? Мне это кажется неверным ...
вопрос задан: 12 August 2015 15:40
0
ответов

Почему делает установщик x86 WiX на Windows Vista x64 не ключи записи к Wow6432Node в реестре?

У меня есть установщик, который пишет в HKLM\Software\DroidExplorer\InstallPath. На любой x86 машине это пишет очень хорошо в ожидаемое местоположение, и на WindowsXP x64 и Windows7 x64 это также...
вопрос задан: 11 August 2015 12:00
0
ответов

Функция C++ для поиска максимального значения в массиве двойных значений?

Я часто ловлю себя на том, что пишу функции максимального значения, которые выполняют поиск в массиве двойных значений. Я использую подобные функции для нормализации данных перед графическим отображением. Есть ли лучший способ найти...
вопрос задан: 9 August 2015 04:10
0
ответов

128-битные сдвиги с использованием языка ассемблера?

Каков наиболее эффективный способ сдвига 128 бит на современном процессоре Intel (Core i7, Sandy Bridge). Похожий код находится в моем самом внутреннем цикле: u128 a [N]; void xor () {for (int i = 0; i
вопрос задан: 19 July 2015 02:49
0
ответов

Что делает инструкция MOVZBL в синтаксисе AT-T IA-32?

Что именно делает инструкция movzbl 0x01 (% eax,% ecx),% eax?
вопрос задан: 29 June 2015 12:04
0
ответов

Сколько этапов конвейера имеет Intel Core i7?

Сколько инструкций он может обрабатывать за раз?
вопрос задан: 29 June 2015 08:27
0
ответов

Какой язык ассамблеи для изучения [закрыто]

Я заинтересован в учебной ассамблее, конкретно потому, что я нахожу полиморфный код довольно интересным, и я своего рода смущенным, насколько я должен учиться. Я слышал, что X86 является наиболее распространенным для изучения или ...
вопрос задан: 24 June 2015 22:59
0
ответов

How to write self-modifying code in x86 assembly

I'm looking at writing a JIT compiler for a hobby virtual machine I've been working on recently. I know a bit of assembly, (I'm mainly a C programmer. I can read most assembly with reference for ...
вопрос задан: 13 June 2015 09:41
0
ответов

ВХОДИТЕ и ВЫЙТИ в Assembly?

Я читал «Искусство языка ассемблера» (Randall Hyde, ссылка на Amazon), и я опробовал консольное приложение из этой книги. Это была программа, которая создала для себя новую консоль с использованием Win32 API ...
вопрос задан: 11 May 2015 11:47
0
ответов

Что означает знак доллара ($ )в ассемблере x86 при вычислении длин строк типа «метка $ -»? [дубликат]

Например, если бы мы писали простую программу типа hello world, раздел.data мог бы содержать что-то вроде :section.data msg db 'Введите что-нибудь :' len equ $ -msg Что...
вопрос задан: 10 May 2015 20:53
0
ответов

Как проверить значение EIP с помощью языка ассемблера? [дубликат]

Я хочу получить текущее значение регистра EIP на языке ассемблера. Возможно ли это?
вопрос задан: 10 May 2015 16:56
0
ответов

Сборка pushl / popl x86 не работает с сообщением «Ошибка: суффикс или операнды недействительны»

Я новичок в программировании на сборке, работаю через Programming Ground Up на рабочем столе Ubuntu x86_64 с GNU ассемблером v2.20.1. Мне удалось собрать / связать выполнение своего кода, пока я не ...
вопрос задан: 10 May 2015 13:16
0
ответов

Чтение регистра флага из программы C

Ради любопытства я пытаюсь прочитать регистр флагов и распечатать это красиво. Я пробовал читать его, используя ключевое слово asm в gcc, но не могу заставить его работать. Есть подсказки, как это сделать? Я ...
вопрос задан: 28 April 2015 17:49
0
ответов

Как сравнить два вектора с помощью SIMD и получить один логический результат?

У меня есть два вектора по 4 целых числа в каждом, и я хотел бы использовать команду SIMD для их сравнения (скажем, сгенерировать вектор результатов, где каждая запись равна 0 или 1 в зависимости от результата сравнения). Затем я бы ...
вопрос задан: 27 April 2015 16:01
0
ответов

что делает инструкция movsbl? [дубликат]

Я поискал в сети, но не смог найти четкого примера, чтобы понять, что делает эта инструкция. Так что, если кто-то может привести пример по этому поводу, это будет мне очень полезно.
вопрос задан: 24 April 2015 21:23
0
ответов

Как работает инструкция `test`?

Если у нас есть: test dword ptr [eax], 2000h je label1: Есть ли в dword ptr [eax] какое-либо значение, кроме 0, которое заставило бы совершить прыжок?
вопрос задан: 10 April 2015 23:14
0
ответов

генерация операнда инструкции CALL на x86-64 AMD

Ниже приводится вывод objdump из пример программы, 080483b4 : 80483b4: 55 push% ebp 80483b5: 89 e5 mov% esp,% ebp ...
вопрос задан: 7 April 2015 10:36
0
ответов

Сборка x86: понимание синтаксиса БД

Я только начал изучать сборку x86, следуя вместе с онлайн-книгой, которую я нашел: http://www.cs.bham.ac.uk/~exr/lectures/opsys/10_11/lectures/os-dev.pdf Как Я просматривал книгу и ...
вопрос задан: 25 February 2015 04:37
0
ответов

Создание и реализация абстрактного синтаксического дерева в сборке 86x

поэтому я недавно начал изучать язык ассемблера, и у меня возникли проблемы с созданием абстрактных синтаксических деревьев (AST) и последующей их реализацией в ассемблере. Допустим, у меня есть это уравнение: z = (3 - 2 * x) * x - ...
вопрос задан: 24 February 2015 23:26
0
ответов

Кто-нибудь знает, что делает «mov edi, edi»?

69A8AB13 int 3 69A8AB14 int 3 69A8AB15 mov edi, edi 69A8AB17 push ebp 69A8AB18 mov ebp, esp mov edi, edi не имеет смысла для меня, что ...
вопрос задан: 3 December 2014 09:30
0
ответов

Разделенный текст в < DIV >

У меня очень длинный текст без космоса. Например, < div style = «ширина: 179px» > WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
Я хочу разделить...
вопрос задан: 3 December 2014 09:12
0
ответов

Это «не должно происходить», это ошибка процессора AMD Fusion?

В мою компанию начали звонить несколько клиентов. in, потому что наша программа вылетает из-за нарушения прав доступа в их системах. Сбой происходит в SQLite 3.6.23.1, который мы поставляем как часть ...
вопрос задан: 18 November 2014 17:53
0
ответов

Каков окончательный вывод eax для заключительного раздела (NOP) следующего фрагмента кода x86?

Я понятия не имею, как читать это, и учебники кажутся большими трудностями для одного вопроса об ассемблере, который я никогда больше не коснусь. MOV $ 16457,% ebx MOV $ 17458,% eax MOV $ 7086,% ecx CMP% eax,% ebx JL L1 ...
вопрос задан: 2 November 2014 05:18
0
ответов

Более быстрый оптимизированный способ преобразования между изображениями RGB8 и RGB32

Я пытаюсь найти оптимизированный для сборки метод преобразования изображений RGB8 в RGB32. Источник представляет собой 8-битное серое изображение, назначение должно быть 32-битным серым изображением (BGRA )с 4-м каналом (альфа ), чтобы быть...
вопрос задан: 23 October 2014 11:17
0
ответов

Как проверить, является ли целое число со знаком neg или pos?

Я новичок в языке ассемблера x86, у меня целое число со знаком сохранено в регистре eax, и я хочу проверьте, является ли число отрицательным или положительным. Для этого я использовал инструкцию bt, чтобы проверить первый бит. ...
вопрос задан: 21 September 2014 06:48
0
ответов

Разделить и получить остаток одновременно?

Очевидно, x86 (и, вероятно, многие другие наборы инструкций) помещают как частное, так и остаток от операции деления в отдельные регистры. Теперь мы, вероятно, можем доверять компиляторам оптимизацию ...
вопрос задан: 24 July 2014 20:45
0
ответов

Проблемы с пользовательским загрузчиком

Я пытаюсь написать загрузчик для ОС Hobby, и он отлично работает. Ничего особенного, просто печатает строку текста: BITS 16 ORG 0 start: jmp main OEM db "Test OS" ...
вопрос задан: 15 June 2014 20:38
0
ответов

Самомодифицирующийся код всегда дает ошибки сегментации в Linux

Я нашел статью о самомодифицируемом коде и попытался сделать несколько примеров, но всегда получаю ошибки сегментации. Насколько я могу понять, есть нарушение прав памяти. Код ...
вопрос задан: 5 June 2014 12:57