Вопросы по теме 'inline-assembly'

Как написать следующий встроенный ассемблерный код в Visual C++ 6.0?
Я пишу приложение на C в GCC (для Linux/Ubuntu), которое использует следующую встроенную сборку. float a[4] = { 10, 20, 30, 40 }; float b[4] = { 0.1, 0.1, 0.1, 0.1 }; asm volatile("movups (%0), %%xmm0\n\t" "mulps (%1), %%xmm0\n\t"...
2374 просмотров

Встроенная сборка внутри циклов
Я широко использую встроенную сборку в проекте, где мне нужно вызывать функции с неизвестным количеством аргументов во время компиляции, и пока мне удается заставить ее работать, иногда в Linux (в Windows я не помню, чтобы была такая проблема)...
2446 просмотров
schedule 05.12.2022

Простая программа на встроенном ассемблере Hello World на C/C++
Я использую компилятор devcpp и borland c.... asm { mov ax,4 // (I/O Func.) mov bx,1 // (Output func) mov cx,&name // (address of the string) mov dx,6 // (length of the string) int 0x21 // system...
9865 просмотров
schedule 24.09.2022

Проблема новичка с встроенной сборкой
Я использую VS2008 С++ (без библиотек). Это мой код: __asm { jmp start msg: db "http://www.stackoverflow.com" dtfld: db "00/00/0000" tmfld: db "00:00:00" start: Я получаю следующие ошибки:...
2757 просмотров
schedule 14.04.2022

C2244 при попытке вызвать функцию pow из встроенной сборки
Я хотел бы вызвать функцию pow из встроенной сборки. Проблема в том, что я получаю сообщение об ошибке C2244: «pow»: невозможно сопоставить определение функции с существующим объявлением. Я новичок в сборке, поэтому это может быть тривиальный...
946 просмотров
schedule 21.10.2022

Помощь с умножением ассемблера/SSE
Я пытался понять, как улучшить свой код в очень важной паре строк: float x = a*b; float y = c*d; float z = e*f; float w = g*h; все a, b, c... являются числами с плавающей запятой. Я решил изучить использование SSE, но, похоже, не нашел...
1866 просмотров
schedule 03.08.2023

Можно ли получить доступ к 32-битным регистрам в C?
Можно ли получить доступ к 32-битным регистрам в C? Если да, то как? А если нет, то есть ли способ встроить ассемблерный код в C? Кстати, я использую компилятор MinGW. Заранее спасибо!
20473 просмотров

Использование ASM при компиляции x64 C ++ с MSVC10
Из-за того, что MSVC10 не позволяет использовать встроенные инструкции ASM при ориентации на архитектуру x64, я ищу любые способы обойти такие ограничения. Из Google я узнал, что написание и компиляция отдельных модулей ASM, а затем связывание с ними...
842 просмотров
schedule 15.05.2023

встроенная сборка sse с g++
Я пробую встроенную сборку g++ и sse и написал первую программу. Это segfaults - почему? #include <stdio.h> float s[128*4] __attribute__((aligned(16))); #define r0 3 #define r1 17 #define r2 110 #define rs0 "3" #define rs1 "17" #define...
1929 просмотров
schedule 18.05.2023

Как сгенерировать данные для инструкции mov?
Мне нужно понять только 1 единственную инструкцию и, соответственно, мне нужно обобщить вещи. Мне нужно передать структуры (объекты пользовательских типов данных) во время выполнения, используя следующий код сборки. Где ниже указан тип данных,...
195 просмотров
schedule 06.07.2022

Как указать отдельный регистр в качестве ограничения во встроенной сборке ARM GCC?
в встроенной сборке x86 я могу написать что-то вроде этого: asm ("cpuid" : "=a" (_eax), "=b" (_ebx), "=c" (_ecx), "=d" (_edx) : "a" (op)); поэтому в ограничениях сопоставления...
3479 просмотров
schedule 05.04.2023

C++: список уничтожения asm
В g++ можно указать списки уничтожения для asm, например: asm ("somecode" : : "r1", "r2", "r3"); что означает, что ассемблерный код меняет регистры r1, r2, r3. Теперь мои измененные регистры зависят от параметра шаблона n (блок asm...
843 просмотров

Как загрузить ядро ​​или иметь возможность использовать больше места в собственном загрузчике?
Я следил за этим: ( http://www.codeproject.com/KB/tips/boot-loader.aspx ) Но не знаю, что и как делать дальше. Как в него загрузить самописное ядро? Или как сделать больше места, чем в одиночном сегменте? А что делать с бинарниками? Мне нужно...
2341 просмотров

Замена встроенного ассемблерного кода
Мне нужно написать встроенный ассемблерный код, который выполняет пользовательскую инструкцию, которую я интегрировал в свое оборудование. В зависимости от того, какое оборудование находится на реальном чипе, инструкция ведет себя по-разному. Моя...
818 просмотров

Почему моя программа работает на Ubuntu gcc, но не на OSX gcc?
Итак, моя домашняя работа, я запустил ее в Ubuntu, и она отлично компилируется и работает так, как должна. Но когда я запускаю это в Mac OSX, возникает ошибка шины. Почему это? Я компилирую с gcc -m32 source.c -o test Вот версия для Mac OSX...
343 просмотров
schedule 11.06.2022

Могу ли я использовать asm-функцию со строковой переменной c вместо строкового литерала в качестве аргумента?
Я сделал что-то вроде этого: char command [] = "Некоторый ассемблерный код"; asm изменчивая (команда); Это не сработало. В частности, я получаю следующую ошибку: Expected string literal before command. Итак, могу...
302 просмотров
schedule 17.09.2022

Справка по преобразованию: __asm__ __volatile__
Я хотел бы перенести функцию outb из C на D. static __inline void outb (unsigned char value, unsigned short int port) { __asm__ __volatile__ ("outb %b0,%w1" : : "a"...
1388 просмотров
schedule 26.04.2022

Как использовать глобальную переменную во встроенной сборке gcc
Я пытаюсь использовать встроенный ассемблер для глобальной переменной, но компилятор выдает ошибку, говоря о неопределенной ссылке на saved_sp . __asm__ __volatile__ ( "movq saved_sp, %rsp\n\t" ); saved_sp глобально объявлен как...
6353 просмотров
schedule 10.10.2022

Переключение контекста с помощью встроенной сборки руки
У меня есть еще один вопрос о встроенной инструкции по сборке, касающейся переключения контекста. Этот код может работать, но я не уверен на 100%, поэтому я отправляю этот код профессионалам stackoverflow ;-) Я компилирую с помощью gcc (без...
1533 просмотров
schedule 22.05.2022

Встроенная сборка в Netbeans с использованием C++
Я пытаюсь изучить сборку из серии очень хороших руководств, размещенных на YouTube: http://www.youtube.com/watch?v=guru397zg2g&list=PL0C5C980A28FEE68D&feature=plcp&context=C4ca8d4cFDvjVQa1PpcFM2reYRFji1sQFkiYY545AxtksGRUnLWSY= Я знаком с...
2623 просмотров
schedule 23.08.2022