Русский / Russian English / Английский

Сейчас на форуме: (+1 невидимый пользователь)
 · Начало · Статистика · Регистрация · Поиск · ПРАВИЛА ФОРУМА · Язык · RSS ·

 eXeL@B —› Вопросы новичков —› Особенности вормирования ассемблерных инструкций из машиннного кода.
Посл.ответ Сообщение

Ранг: 0.9 (гость)
Статус: Участник

Создано: 15 января 2020 23:17 New!
Цитата · Личное сообщение · #1

Приветствую всех форумчан.У меня такой вопрос,почему и как для разных процессоров формируются ассемблерные инструкции из машинного кода?Если можно,то объясните пожалуйста на примере инструкции NOP,для современных процессоров у неё опкод 90,а для такого старенького процессора,как Z80,у неё опкод EA...


Ранг: 240.4 (наставник)
Статус: Участник

Создано: 15 января 2020 23:21 New!
Цитата · Личное сообщение · #2

Наверное речь о дизассемблировании. Выбирается этот байт 90, обрубается конъюнкцией 11111111b (весь байт опкод) и сравнивается с 90. Если совпало, дизассемблер заявляет, что по этому адресу инструкция nop x86го процессора. У спектрума другая архитектура и другой набор инструкций, которые(о неожиданность), раскодируются по-другому.

Ранг: 7.1 (гость)
Статус: Участник

Создано: 15 января 2020 23:27 New!
Цитата · Личное сообщение · #3

INCDEC пишет:
У меня такой вопрос

Странный вопрос какой-то...
Каждой инструкции соответствует свой уникальный опкод, какие еще могут быть варианты???

Ранг: 0.9 (гость)
Статус: Участник

Создано: 15 января 2020 23:28 New!
Цитата · Личное сообщение · #4

А где об этих особенностях можно почитать подробнее?Очень интересно.Я ещё ромхакингом занимаюсь и ромхачу игры для NES(Dendy),столкнулся с такой особенностью и стало интересно.)))

Добавлено спустя 2 минуты
AE пишет:
Каждой инструкции соответствует свой уникальный опкод

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


Ранг: 240.4 (наставник)
Статус: Участник

Создано: 15 января 2020 23:31 New!
Цитата · Личное сообщение · #5

Том 2 читай --> Link <--, там этих особенностей надолго хватит. Для нес тоже найди instruction set manual и читай там.

| Сообщение посчитали полезным: INCDEC


Ранг: 7.1 (гость)
Статус: Участник

Создано: 15 января 2020 23:34 New!
Цитата · Личное сообщение · #6

INCDEC пишет:
Не такой уж он и уникальный,точнее в разных процессорах могут быть разные опкоды для одной и той же инструкции...

То есть одна и та же прога, может выполнять кроме (вместо) задуманного прогером что-то (черти что)?

Ранг: 0.9 (гость)
Статус: Участник

Создано: 15 января 2020 23:36 New!
Цитата · Личное сообщение · #7

f13nd
Спасибо большое.

Добавлено спустя 2 минуты
AE пишет:
То есть одна и та же прога, может выполнять кроме (вместо) задуманного прогером что-то (черти что)?

Не совсем,это в вопросах портирования игр с одной платформы на другую,как,например,какой-либо игры с NES на Sega Genesis.


Ранг: 325.1 (мудрец)
Статус: Участник

Создано: 15 января 2020 23:39 · Поправил: difexacaw New!
Цитата · Личное сообщение · #8

INCDEC

Для zilog хорошие таблицы опкодов тут ez80 t106, opcode map --> Link <--

> как для разных процессоров формируются ассемблерные инструкции

Обычно архитектура известна и выбирается диз, если же нет, то кто его знает.. как по хекс последовательности узнать для какого она процика(перебором и смотреть пересечения после ветвлений?). А может это и вовсе данные

| Сообщение посчитали полезным: INCDEC


Ранг: 0.9 (гость)
Статус: Участник

Создано: 15 января 2020 23:43 New!
Цитата · Личное сообщение · #9

difexacaw пишет:
А может это и вовсе данные

Ну,это да,бывает и так.)))


Ранг: 240.4 (наставник)
Статус: Участник

Создано: 15 января 2020 23:49 New!
Цитата · Личное сообщение · #10

difexacaw, где-то наблюдал видос, как мужик крутил донди-игру встроенным в эмулятор визором и потом только парсил получившийся cfg скриптом для иды. В принципе как порождающая стратегия неплохо, особенно для наиболее тупых архитектур.

| Сообщение посчитали полезным: difexacaw

 eXeL@B —› Вопросы новичков —› Особенности вормирования ассемблерных инструкций из машиннного кода.
Эта тема закрыта. Ответы больше не принимаются.

Видеокурс ВЗЛОМ