Описание тега machine-code
Машинный код - это данные, которые напрямую загружаются в микропроцессор, являясь единственной формой, которую процессор может выполнить. Это самый низкий возможный уровень абстракции, при котором все данные представляют собой необработанный двоичный поток. Машинный код плохо читается людьми, поэтому вместо него обычно используется ассемблер.
2
ответа
Как приложение может быть переписано в машинном коде и связано с Java?
Я читал языковую среду Java. В разделе High Performance я нашел этот блок Приложения, требующие большого объема вычислительной мощности, могут быть спроектированы таким образом, что участки, требующие большого объема вычислений, могут быть переписан…
13 сен '13 в 14:19
2
ответа
Понимание операндов x86 m* (FPU и других)
Я пытаюсь сделать простой дизассемблер x86 (пока 32-битный) для учебных целей. Таким образом, документы Intel идут: Но я нахожу это очень запутанным. Прежде всего, операнды m8-32, кажется, указывают либо ES:(E)DI или же DS:(E)SI,Но нельзя сказать, в…
11 апр '18 в 03:44
8
ответов
Может ли программное обеспечение быть выполнено на голом металле?
Мне просто интересно, можем ли мы запустить программу на машине без операционной системы? Кроме того, я слышал, что ядро Linux написано на языке C, а ядро запускается во время загрузки, поэтому мне просто интересно, как компьютер понимает язык б…
20 янв '10 в 08:14
8
ответов
Код сборки против машинного кода против объектного кода?
В чем разница между объектным кодом, машинным кодом и кодом сборки? Можете ли вы привести наглядный пример их различия?
21 янв '09 в 20:17
0
ответов
Что не так с моим простым вызовом функции intel x64 machine code?
Вот мой код вызова функции: (Instructions start at 0x00403000) 6A 28 (Stack Push 0x28) EB 0A (Jump 10) 40 80 04 25 03 10 40 00 05 (Add 5 to address 0x00401003) C3 (Near return) FF 14 25 04 30 40 00 (Call 0x00403004) Это вызывает взрыв моей программы…
30 окт '15 в 00:03
1
ответ
Спецификации для MOV оп-кодов
Во всей документации, которую я могу найти относительно кодов операций для мнемоники MOV, каждый код операции не документируется отдельно. оп-код B8h+ Документируется как перемещение 16- или 32-разрядных данных в 16- или 32-разрядный реестр. Что име…
28 ноя '15 в 06:14
1
ответ
Как я могу увидеть, что хранится в местоположении 0xaddress(%register)?
Я смотрю на инструкцию cmp 0x204d63(%rip),%eax в сборке х86 машина. Я использую отладчик GDB. Я знаю, что немного 0x204d63(%rip) технически добавляет (%rip)+0x204d63, Я считаю, что это добавление адреса %rip по адресу 0x204d63 для ссылки на новый ад…
29 мар '18 в 18:48
2
ответа
Как я могу скомпилировать специфичный для VM код в машинный код x86?
У меня есть 16-разрядная виртуальная машина на основе регистров, я хочу знать, каковы этапы ее компиляции с реальным машинным кодом x86? Я не собираюсь делать JIT-компилятор, если нет необходимости связывать скомпилированный код с другим исполняемым…
02 мар '17 в 00:10
1
ответ
Как писать и читать биты по одному в файле через NodeJS?
Я хочу создать бинарный файл, используя 0 а также 1 битовые значения, а затем я хочу прочитать их по одному. Как я могу это сделать? Для написания я попробовал: var out = require("fs").createWriteStream("./out"); out.write(new Buffer("0")); // this …
03 дек '14 в 19:20
1
ответ
Как выглядит расположение команды косвенного / прямого вызова в памяти?
Я сравниваю инструкцию косвенного вызова с инструкцией прямого вызова, и я хочу знать расположение (из них в памяти, особенно на платформе x86). Большое спасибо.
12 май '18 в 04:59
1
ответ
Как выполнить машинный код, добавленный в конец исполняемого файла, используя C++?
У меня есть программа, которая добавляет машинный код в конец исполняемого файла, и я хочу написать программу на C++ в начале исполняемого файла, чтобы запустить добавленный машинный код. Затем добавленный код запустит оригинальную программу. Моя пр…
19 фев '15 в 03:12
1
ответ
MIPS BNE Преобразование машинного кода
Я пытаюсь преобразовать около 25 строк программы MIPS из машинного кода в инструкции. Когда я конвертирую машинный код 0x1620fff9, это дает следующее: 000101 10001 00000 1111 1111 1111 1001 Я понимаю, что это I-формат, и инструкция BNE с целевым рег…
17 мар '16 в 18:03
1
ответ
Как расшифровать машинные коды от x86 ASM?
У меня есть следующие 2 строки из списка (x86 ASM): 0009 66| BB 00000014 mov EBX, (type Tabl1)*2 000F 67| 8D 00000000 R lea DL, A2[EBX]) Не могли бы вы объяснить мне, что означает каждая часть машинного кода (левая часть строки)?
21 дек '14 в 14:50
1
ответ
Почему сохраненный указатель кадра присутствует в кадре стека?
Я прочитал, что SFP используется для восстановления EBP к его предыдущему значению. Почему EBP необходимо вернуться к своему первоначальному значению?
14 июл '17 в 22:01
1
ответ
Как я могу скомпилировать / выполнить следующий код в Windows 7 32 Bit?
Можете ли вы сказать мне, как я могу выполнить этот код на Windows 7 32-битной машине?Нужно ли его компилировать? Если да, то как мне это сделать?Какой конец (.exe) должен иметь файл? section .bss section .data section .text global _start _start: cl…
16 ноя '16 в 19:52
3
ответа
Как я могу написать необработанный машинный код для x86 без использования сборки?
Я хотел бы иметь возможность писать необработанный машинный код без ассемблера или любого другого языка более высокого уровня, который можно поместить непосредственно на флэш-диск и запустить. Я уже знаю, что для этого нужно отформатировать заголовк…
25 июн '18 в 21:54
2
ответа
Сборка Как перевести код операции DIV в код C
Эй, я знаю, что задавал много вопросов... но не много ресурсов по этому вопросу в Google, так что, надеюсь, это поможет будущим людям, которые пытаются делать подобные проекты, я всегда тоже ищу решения Google, но я никогда не выполняю поиск на перв…
14 окт '11 в 10:09
0
ответов
Как найти место в двоичном коде, где используется определенная строка
Я пытаюсь проанализировать двоичный исполняемый файл. Я хочу найти местоположение определенной функции в этом файле; Я знаю, что эта функция использует определенный строковый литерал. Я нашел расположение этой строки в двоичном коде; Я решил поискат…
03 апр '18 в 07:32
1
ответ
Изменение мнемонических изменений адреса
Я новичок в GDB и сборке. Я пытаюсь изменить мнемоническую инструкцию от jg в jle, но всякий раз, когда я меняю мнемонику, он также меняет адрес назначения. Например, Допустим, я пытаюсь изменить это: 4005a5 0f 8f 1e 01 00 00 jg 400c74 <Function_…
18 сен '18 в 05:12
1
ответ
x64 MOV 32-битный непосредственный в 64-битный регистр
Вторая инструкция на этой странице в разделе кода: https://i.imgur.com/LIImg.jpg Выглядит так: MOV r9d, 0, Закодировано так: 41 B9 00 00 00 00 Единственная проблема... Там нет MOV инструкция в руководстве Intel x64, которая берет 4-х байтовый файл и…
07 апр '15 в 21:45