Вопросы по теме 'machine-code'

Учебник по машинному коду для Mac
Я хочу изучить машинный код. Не по какой-то конкретной причине. Просто на всякий случай. Мне было интересно, есть ли хорошие учебники по машинному коду. У меня макбук с процессором Intel Core 2 Duo 2,4 ГГц.
4411 просмотров
schedule 14.07.2023

Бит расширения направления/знака в кодировке кода операции x86
В наборе инструкций x86 бит в индексе 1 кода операции может быть либо битом направления, указывающим, что такое операнды назначения и источника, либо битом расширения знака. например для add 00 /r ADD r/m8, r8 и 02 /r ADD r8, r/m8...
1730 просмотров
schedule 13.10.2022

операторы int! = и == при сравнении с нулем
Я обнаружил, что! = И == - не самые быстрые способы проверки нуля или ненулевого значения. bool nonZero1 = integer != 0; xor eax, eax test ecx, ecx setne al bool nonZero2 = integer < 0 || integer > 0; test ecx, ecx setne al bool zero1 =...
3091 просмотров
schedule 08.10.2023

Является ли ассемблер единственным языком программирования низкого уровня, а если нет - наиболее широко используемым?
Я начал изучать ассемблер недавно, и, просматривая Интернет, я вижу, что все больше и больше людей говорят, что ассемблер не бесполезен, но также не стоит тратить время на программирование чего-либо на языке, который требует такого времени и усилий по...
12303 просмотров

Преобразование инструкции по сборке PIC в машинный код
Я видел, что существуют определенные форматы для преобразования инструкций по сборке MIPS в машинный код. Должна быть аналогичная процедура для преобразования сборки PIC в машинный код вручную. Может ли кто-нибудь предоставить мне документацию,...
3758 просмотров
schedule 28.06.2022

Почему этот машинный код генерируется для inc qword [rsp]?
Рассмотрим эту сборку x64 NASM-синтаксиса: inc qword [rax] inc qword [rcx] inc qword [rdx] inc qword [rbx] inc qword [rsp] inc qword [rbp] inc qword [rsi] inc qword [rdi] После сборки с помощью nasm (и линковки с помощью gnu ld) objdump -d...
321 просмотров
schedule 02.02.2023

Создайте свой собственный (очень простой) компилятор, используя Java
Я хочу попробовать создать свой собственный очень простой язык с его очень простым компилятором. Все с использованием Java. На данный момент нужно будет только разрешить «программисту» печатать на экране. У меня была идея, как это сделать, и я...
15035 просмотров

Машинный код: сколько циклов чтения и / или записи задействовано в циклах выборки и выполнения следующих инструкций?
Хорошо, я отвечал на прошлые экзаменационные вопросы по модулю Компьютерная архитектура, и я натолкнулся на следующий вопрос, и я не знаю, как это сделать? Если кто-нибудь может сказать / показать мне, как я бы ответил на это, или отправьте мне...
152 просмотров
schedule 23.11.2022

Как инструкции машинного кода передаются в ЦП?
В настоящее время я изучаю, как за кулисами выглядит среда выполнения различных языков программирования. Для скомпилированного языка, такого как C, люди обычно дают объяснение: «Код скомпилирован в сборку, которая собрана и связана с двоичным...
1046 просмотров
schedule 24.02.2022

Преобразовать функцию Freepascal в сборку?
Из-за проблем с производительностью я хотел бы попытаться преобразовать функцию Freepascal (SHA1Update, из модуля SHA1) в сборку. Я использую Freepascal 2.6.4 и Lazxarus 1.2.4. Причина в том, что у меня есть структура цикла (повторять ... до тех...
530 просмотров

Что преобразует язык ассемблера в машинный код
Я новичок в программировании, и я начал с языка C ++, насколько мне известно, язык C ++ конвертируется в язык ассемблера компилятором C ++ (например, Visual Studio), но я попытался найти то, что преобразует язык ассемблера в машинный код, чтобы быть...
45699 просмотров
schedule 21.10.2022

Этикетка стека в наборе инструкций по сборке 8086
Я пытаюсь изучить сборку 8086. это часть стека ассемблерного кода 8086: STACK SEGMENT STACK DW 50 DUP(?) TOP_STACK Label Word STACK ENDS какова цель TOP_STACK Label Word ? я не смог найти ключевое слово Label в наборе инструкций...
1186 просмотров
schedule 13.09.2022

Прыжки для JIT (x86_64)
Я пишу JIT-компилятор на C для x86_64 linux. В настоящее время идея состоит в том, чтобы сгенерировать некоторый байт-код в буфере исполняемой памяти (например, полученный с помощью вызова mmap) и перейти к нему с помощью указателя на функцию. Я...
399 просмотров

Инструкция x86/x64 PCLMULQDQ (четыре слова умножения без переноса)
Эта инструкция находится на странице 1067 руководства Intel x64, но в ней не сказано, умножает ли она целые числа без знака или со знаком. Кто-нибудь знает?
355 просмотров
schedule 03.12.2023

Какое значение имеют операции с регистром EAX, имеющим собственные коды операций?
Если вы посмотрите документацию по операциям вроде cmp , _ 2_ , add , sub и _ 5_ , вы заметите, что операции, которые включают регистр EAX и его 16- и 8-битные варианты в качестве первого операнда, имеют отдельный код операции, который...
632 просмотров

понимать работу LB MIPS
Операция LB MIPS: ссылка: http://www.ece.cmu.edu/~ece447/s13/lib/exe/fetch.php?media=mips_r4000_users_manual.pdf Страница 549 32 vAddr ← ((offset15)16 || offset15...0) + GPR[base] (pAddr, uncached) ← AddressTranslation (vAddr, DATA) pAddr ←...
249 просмотров

код операции регистра %ebx
Я написал следующую программу на ассемблере, чтобы получить код операции различных регистров: .section .text .globl _start _start: add $1,%eax add $1,%ebx...
236 просмотров

Как один байт кода операции декодирует разные инструкции в зависимости от поля регистра/кода операции? Что это такое?
Как я могу определить, во что будет преобразован массив байтов в машинном коде? Я понимаю, что если я вижу 0f в начале, это 2-байтовая инструкция, но я вижу другие префиксы и в некоторой разборке в моем отладчике x64 я вижу странные взаимодействия,...
2556 просмотров
schedule 31.03.2022

Как аппаратное/программное обеспечение ассемблера реализовано в процессоре?
Я энтузиаст компьютерного дизайна, работающий с симулятором Logisim для создания процессоров с нуля (из логических элементов). Я успешно собрал работающий ЦП, который имеет набор инструкций, аналогичный процессору MOS 6502. ЦП понимает только...
507 просмотров

Почему мой машинный код ведет себя не так, как ожидалось?
Я использую отладчик DOSBox в качестве среды для изучения того, как процессор на базе x86/64 проходит машинный код. В качестве справки я использую пример «вывода с разделителями длины DOS2», который я нашел по адресу:...
104 просмотров
schedule 08.09.2022