Результаты поиска по запросу "inline-assembly"
Обратите внимание, что даже если вы добьетесь успеха, многие ОС будут блокировать такое выполнение, поскольку это нарушает безопасность. Это был бы отличный способ создать вирусы, и поэтому обычно блокируется.
как вы знаете в C и C ++, если вы используете Visual-C, вы можете иметь в строке инструкции по сборке, такие как: int main() { printf("Hello\n"); __asm int 3 printf("this will not be printed.\n"); return 0; }Который сделает точку останова ...
Как вы определяете тип архитектуры процессора во время выполнения с GCC и встроенным ассемблером?
Мне нужно найти тип архитектуры процессора. У меня нет доступа к / proc / cpuinfo, так как на машине работает syslinux. Я знаю, что есть способ сделать это с помощью встроенного ASM, однако я считаю, что мой синтаксис неверен, поскольку моя ...
Только что попробовал второе решение, отлично работает на одном из моих компьютеров, но не удалось другого, возможно, причина старой версии GCC.
ужен такой встроенный код сборки: у меня естьпара(так, это сбалансировано) операции push / pop внутри сборкиУ меня также есть переменная в памяти (так, не регистр) в качестве вводанравится: __asm__ __volatile__ ("push %%eax\n\t" // ... some ...
это 2 мопс. (И вызывает остановку перехода SSE / AVX на Haswell, но не Skylake). Кроме того, все эти операции являются частью цепочки зависимостей для изменяемого регистра, в отличие от установки значения в другом регистре и смешивания.
состоит в том, что я хотел бы собрать возвращенные значенияdouble в векторный регистр для обработки для машиныimm width вовремябезСохранение обратно в память первым. Конкретная обработка являетсяvfma с двумя другими операндами, ...
и дать GCC возможность передвигаться. GCC удалил большую часть кода, поэтому буферы не были случайными. Встроенный ассемблер GCC абсолютно отстой. Я был бы смущен, если бы я издал инструмент, который сосал это плохо. Мало того, что мы не можем выразить то, что мы хотим сделать, мы должны использовать volatile, чтобы GCC не ломал дерьмо.
отаю в Power9 и использую аппаратную инструкцию генератора случайных чисел под названием DARN. У меня есть следующая встроенная сборка: uint64_t val; __asm__ __volatile__ ( "xor 3,3,3 \n" // r3 = 0 "addi 4,3,-1 \n" // r4 = -1, failure "1: \n" ...
@PeterCordes Я думаю, что OP будет благодарен, если я просто предоставлю подтверждение концепции, а не учебник. :)
рабатываю онлайновую систему судейства для конкурсов по программированию, таких как LeetCode, Codeforces и т. Д. Что касается большинства конкурсов по программированию, встроенный ассемблер не разрешен в C / C ++, поэтому я хотел бы добавить ...
Надеюсь, это поможет.
long getesp() { __asm__("movl %esp,%eax"); } void main() { printf("%08X\n",getesp()+4); }у esp указывает на значение перед настройкой стекового фрейма и имеет ли это какое-то значение между приведенным ниже кодом? void main() { __asm__("movl ...
блоки, и я говорю конкретно о компиляторах Microsoft. Вы все еще можете создать отдельный файл .asm, собрать его с помощью ассемблера Microsoft (ML / ML64 / armasm) и связать полученный .obj с программой на C / C ++, используя CL. Другие ответы показывают, что вы можете выполнять встроенную сборку с другими компиляторами.
ню, когда-то со старым DOS-компилятором borland вы могли сделать что-то вроде этого: asm { mov ax,ex etc etc... }Есть ли полуплатформенный независимый способ сделать это сейчас? Мне нужно сделать вызов BIOS, поэтому, если бы был способ ...
, компилятор все еще может пролить аргументы функций в красную зону.
у криптографическую программу, а ядро (широко распространенная процедура) написано в сборке x86-64, как для скорости, так и потому, что оно широко использует такие инструкции, какadc которые не легко доступны из C. Я не хочу вставлять эту ...
5 байт (при условии x86-32), но это вряд ли будет серьезной проблемой.
шем байт-код для высокоуровневого скомпилированного языка, и после небольшого профилирования и оптимизации выяснилось, что наибольшие накладные расходы на производительность - это оператор switch, который мы используем для перехода к случаям ...