Вопросы по теме 'cpu-registers'

Генерация кода разработки компилятора для выражений с несколькими операндами
Я нахожусь в процессе написания компилятора для C-подобного языка. Я прошел проверку синтаксиса и семантики и начинаю фазу генерации кода. Окончательный код, который я должен сгенерировать, должен иметь 3-х адресную архитектуру...
2392 просмотров

Почему Intel не сделала доступной старшую часть регистров своих процессоров?
При программировании на ассемблере и выполнении каких-либо манипуляций со строками я использую al , ah , а иногда и другие для хранения символов, потому что это позволяет мне хранить больше данных в моих регистрах. Я думаю, что это очень удобная...
645 просмотров
schedule 17.04.2024

Оптимизация используемых регистров при использовании встроенной сборки ARM в GCC
Я хочу написать некоторую встроенную сборку ARM в моем коде C. Для этого кода мне нужно использовать регистр или два больше, чем только те, которые объявлены как входы и выходы функции. Я знаю, как использовать список clobber, чтобы сообщить GCC,...
1547 просмотров

Смущает знак % и прочее в дизассемблере
я разобрал этот код int main{ vector<string> temp; } Результат такой LEA ECX, %16I64X DWORD PTR[EBP + temp] CALL std::vector<std::basic_string<char, std::char_traits<char>, std:: Мои вопросы: Что здесь...
120 просмотров
schedule 15.12.2023

Регистры операционной системы ядра Linux
Доступны ли регистры (например, eax, ebx, ecx, edx, esp, ebp и т. Д.) В процессоре или они являются ячейками виртуальной памяти с точки зрения программирования?
1633 просмотров
schedule 05.12.2023

Как заставить компилятор С++ использовать регистры?
У меня есть цикл for в моем коде (c++ .Net Win32 Console), который должен работать как можно быстрее. Поэтому мне нужно, чтобы компилятор использовал регистр , а не сохранял его в ОЗУ . MSDN говорит: Ключевое слово register указывает,...
3999 просмотров

Как интерпретировать столбцы панели разборки окна ЦП?
Есть инструмент, называемый окном ЦП, который я нажимаю Ctrl + Alt + C , который показывает дизассемблирование моего кода. Зеленая стрелка слева от адреса памяти указывает местоположение текущей точки выполнения, затем идут адреса памяти, но...
449 просмотров

GameBoy ISA (написание эмулятора)
Я работаю над эмулятором GameBoy на C. Прямо сейчас я работаю над файлом CPU.c, и я немного запутался в некоторых инструкциях, которые я вижу здесь: http://realboyemulator.files.wordpress.com/2013/01/gbcpuman.pdf Если вы обратитесь к странице...
2694 просмотров

Коммутативность регистров процессора
[ebp+eax]=[eax+ebp]? Мне задали этот вопрос в классе, и профессор попросил нас найти ответ, но я не могу найти ни одного ресурса в сети.
57 просмотров
schedule 19.04.2024

Могу ли я использовать rsp в качестве регистра общего назначения?
Мне сказали, что если я использую rsp в качестве регистра общего назначения, операционная система может сбрасывать регистры туда, куда он указывает в случае прерывания, вызывая проблемное поведение. Верно ли это, и если нет, то, если мне не нужен...
283 просмотров

Получение 32-битных регистров из 64-битного кода NASM
Я изучаю 64-битный nasm, я собираю файл .nasm, который содержит ТОЛЬКО 64-битные регистры, выполнив следующие действия. nasm -f elf64 HelloWorld.nasm -o HelloWorld.o и свяжите его, выполнив следующие действия ld HelloWorld.o -o...
1006 просмотров
schedule 03.05.2024

Verilog Reg / путаница с проводами
Я делаю многоцикловый процессор в Verilog, который состоит из Datapath и Control. Выходы элемента управления (конечный автомат) являются регистрами, а соединения между каналом данных - проводами. Если предполагается, что проводной сигнал будет (в...
579 просмотров

преобразовать выражение в операцию общего регистра Модели
Я хотел бы получить некоторую помощь, чтобы преобразовать это выражение в команды из 4 методов: z=3*(x+2)-2*y вот методы с моими попытками: по стеку: push 2 push -1 mult push y mult push x push 2 add push 3 mult add pop z по...
39 просмотров

Как я могу сохранить 16-байтовое число в памяти в сборке?
section .bss length equ 16 number: resb length Это работает только с 64 битами: mov qword[number], 43271 Это представлено только 8 байтами (64 бита). Мне нужно хранить значения в памяти в 128-битном формате, но я понятия не имею,...
1156 просмотров
schedule 26.12.2023

Почему архитектура ЦП разработана как 32-битная и 64-битная
На данный момент мы используем 32-битные и 64-битные типы ЦП. Я знаю концепцию этих архитектур. Но почему он рассчитан как 16,32 или 64 соответственно. Почему мы не можем разработать архитектуру типа 10, 20, 30 или любых других кратных чисел. С...
50 просмотров

Доступ к значениям независимых от процесса регистров в c
Многие регистры, такие как регистры данных, содержат значения, соответствующие текущему выполняемому процессу. Но есть некоторые регистры, которые являются общими для всех процессов. Я хочу получить доступ для чтения к некоторым регистрам, которые...
665 просмотров
schedule 01.01.2024

Сборка ARM - параметр доступа и возвращаемое значение?
У меня есть прототип функции int Palindrome(const char *c_style_string); В сборке ARM v8 я считаю, что параметр хранится в регистре w0. Однако разве это не тот регистр, значение которого ret выводит? Если да, то что мне нужно сделать, чтобы...
875 просмотров

Почему параметры системного вызова Assembly x86_64 не в алфавитном порядке, как i386
Есть один вопрос, который меня беспокоит. Итак... Почему в x86_32 параметры передаются в регистры, которые, как мне кажется, расположены в алфавитном порядке ( eax , ecx , edx , esi ) и рейтинг ( esi , edi , ebp )...
1730 просмотров

Сдвиг 2 регистров вместе как один
У меня есть eax и edx , и я хотел бы рассматривать их как 1 регистр и сдвигать их оба без потери битов. например, если у меня есть 0 в edx и 0110 1111 0100 1111 0110 1111 0100 1111 в eax, и я бы сделал shl eax , 23 , это дало бы мне 0000...
76 просмотров
schedule 24.11.2023

Использование регистра GS на уровне пользователя в X64 Linux
Я пытаюсь использовать регистр% gs, чтобы сохранить временное значение в моей программе. Я использую проход LLVM для вставки кода сборки, который записывает и читает регистры. Когда использую% fs, все работает. Но% fs используется несколькими...
384 просмотров
schedule 27.09.2022