Вопросы по теме '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 просмотров
schedule
04.07.2022
Преобразование инструкции по сборке 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 просмотров
schedule
18.01.2024
Машинный код: сколько циклов чтения и / или записи задействовано в циклах выборки и выполнения следующих инструкций?
Хорошо, я отвечал на прошлые экзаменационные вопросы по модулю Компьютерная архитектура, и я натолкнулся на следующий вопрос, и я не знаю, как это сделать? Если кто-нибудь может сказать / показать мне, как я бы ответил на это, или отправьте мне...
152 просмотров
schedule
23.11.2022
Как инструкции машинного кода передаются в ЦП?
В настоящее время я изучаю, как за кулисами выглядит среда выполнения различных языков программирования. Для скомпилированного языка, такого как C, люди обычно дают объяснение: «Код скомпилирован в сборку, которая собрана и связана с двоичным...
1046 просмотров
schedule
24.02.2022
Преобразовать функцию Freepascal в сборку?
Из-за проблем с производительностью я хотел бы попытаться преобразовать функцию Freepascal (SHA1Update, из модуля SHA1) в сборку. Я использую Freepascal 2.6.4 и Lazxarus 1.2.4.
Причина в том, что у меня есть структура цикла (повторять ... до тех...
530 просмотров
schedule
28.04.2022
Что преобразует язык ассемблера в машинный код
Я новичок в программировании, и я начал с языка 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 просмотров
schedule
11.06.2023
Инструкция x86/x64 PCLMULQDQ (четыре слова умножения без переноса)
Эта инструкция находится на странице 1067 руководства Intel x64, но в ней не сказано, умножает ли она целые числа без знака или со знаком.
Кто-нибудь знает?
355 просмотров
schedule
03.12.2023
Какое значение имеют операции с регистром EAX, имеющим собственные коды операций?
Если вы посмотрите документацию по операциям вроде cmp , _ 2_ , add , sub и _ 5_ , вы заметите, что операции, которые включают регистр EAX и его 16- и 8-битные варианты в качестве первого операнда, имеют отдельный код операции, который...
632 просмотров
schedule
21.11.2023
понимать работу 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 просмотров
schedule
06.06.2022
код операции регистра %ebx
Я написал следующую программу на ассемблере, чтобы получить код операции различных регистров:
.section .text
.globl _start
_start:
add $1,%eax
add $1,%ebx...
236 просмотров
schedule
03.04.2022
Как один байт кода операции декодирует разные инструкции в зависимости от поля регистра/кода операции? Что это такое?
Как я могу определить, во что будет преобразован массив байтов в машинном коде?
Я понимаю, что если я вижу 0f в начале, это 2-байтовая инструкция, но я вижу другие префиксы и в некоторой разборке в моем отладчике x64 я вижу странные взаимодействия,...
2556 просмотров
schedule
31.03.2022
Как аппаратное/программное обеспечение ассемблера реализовано в процессоре?
Я энтузиаст компьютерного дизайна, работающий с симулятором Logisim для создания процессоров с нуля (из логических элементов). Я успешно собрал работающий ЦП, который имеет набор инструкций, аналогичный процессору MOS 6502. ЦП понимает только...
507 просмотров
schedule
01.05.2022
Почему мой машинный код ведет себя не так, как ожидалось?
Я использую отладчик DOSBox в качестве среды для изучения того, как процессор на базе x86/64 проходит машинный код.
В качестве справки я использую пример «вывода с разделителями длины DOS2», который я нашел по адресу:...
104 просмотров
schedule
08.09.2022