![]() |
|
|
![]()
|
|
| oleg1973 |
|
|||
![]() asm fanat ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3283 Регистрация: 16.7.2003 Где: Italy Репутация: 7 Всего: 34 |
кароче ктото спрашивал тока я не помню мпро микрокомманды процессора, тоесть к примеру команда mov свою очередь состоит из набора микрокоманд которые в результате и выполняются процессором, точнее ее hex код (команды) является указателем на адресс в таблице микрокодов по которому в свою очеред процессо производит их выборку
самое интересное что данные микрокоды можно перепрограмировать тоесть к примеру команда mov eax,0 заносит в регистр еах нолик изменив несколько данную команду можно заставить ее делать и еше какуюнибуть операцию к примеру после занесения в еах нолика скопировать еах в евх надеюсь преимушества обьяснять не нада? и так как это работает: для перевода проца в режим редактирования используется недокументированый опкод 0x0F0B после него нада указать редактируемую команду и после нее добавочную сам микрокод занимает 4 байта тоесть mov eax,0 выглядит как 10111000000000000000000000000000 как видно имеем кучу свободных ноликов mov ebx,eax выглядит как 10001001110000110000000000000000 после наших махинаций данные числа сложатся и сформируют новую команду с новым опкодом внимание! если сумма чисел превысет 0xffffffff и запишется в проц то могут возникнуть проблемы с переполнением и появлением ошибок так что перед тем как ченить химичить лучше на калькуляторе все проверить. ну все в перед эксперементировать за последствия я не отвечаю -------------------- SST 465555 icq 200-512-712 |
|||
|
||||
| Chingachguk |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1232 Регистрация: 25.3.2002 Где: Москва Репутация: нет Всего: 18 |
Чета я невкурил, как это так это.
1) Куда заносятся изменения ? В кристалл что-ли ? Не слишком крута ? 2) Если взять ту же mov eax,0 то команда будет типа opcode,operand(4). Хучь ты че суй в operand, а будет проста mov eax,другой операнд, ну а если ты опкод поменял, то эта уже будет не mov eax,operand, а что-та другое. Инженера ихние юзали-юзали байт опкода - да нехватило в конце концов - вот от этого видна и стали появляться команды с префиксами типа FF - по-моему это jmp dword ptr в 32-х битном коде или типа того. -------------------- I don't like the drugs (but the drugs like me). M.Manson. |
|||
|
||||
| oleg1973 |
|
|||
![]() asm fanat ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3283 Регистрация: 16.7.2003 Где: Italy Репутация: 7 Всего: 34 |
Chingachguk
серезно тоесть разложение команды на подкоманды как на RISC lsl r1,r1,#0x12 вот такое даже можно будет соорудить! -------------------- SST 465555 icq 200-512-712 |
|||
|
||||
| Girder |
|
|||
![]() Лентяй 2 ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1993 Регистрация: 12.5.2004 Репутация: нет Всего: 155 |
PS: И тебя oleg1973 с 1 апреля -------------------- Как слышим, так и пишим. Истина где-то там... |
|||
|
||||
| AISIN |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 185 Регистрация: 27.1.2005 Где: Пушкино Репутация: нет Всего: 1 |
А почему бы просто макроопределения не использовать!!!
Определяем макрокоманду с именем INCX1:
Макрокоманда INCX1 будет вызываться вот так MM1 INCX1 -------------------------------------------------------------------------------------------------- А кто нибудь юзал ассемблер версии 6.2.0.? Там можно делать вот так!
--------------------
Внимание!!! Внимание!!!Запущена программа по завоеванию мира!!!Выполненно 0,000000000000000000000000000000000000000000000000000002% |
||||
|
|||||
| oleg1973 |
|
|||
![]() asm fanat ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3283 Регистрация: 16.7.2003 Где: Italy Репутация: 7 Всего: 34 |
AISIN
сильно загнул как ты -------------------- SST 465555 icq 200-512-712 |
|||
|
||||
| AISIN |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 185 Регистрация: 27.1.2005 Где: Пушкино Репутация: нет Всего: 1 |
oleg1973 Да я сам удивился когда это увидел! Вобщето этот ассемблер был специально разработан для мобильных устройств.
--------------------
Внимание!!! Внимание!!!Запущена программа по завоеванию мира!!!Выполненно 0,000000000000000000000000000000000000000000000000000002% |
|||
|
||||
![]()
|
| Правила форума "Asm: Общие вопросы" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Asm: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |