Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Команда JMP не компилируется TASM 
V
    Опции темы
iff
Дата 25.11.2010, 23:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Администратор
**


Профиль
Группа: Участник
Сообщений: 948
Регистрация: 23.3.2007

Репутация: 5
Всего: 16



У меня в коде нужно поставить инструкцию JMP 0F80H:100H, но TASM выдает ошибку при ее компиляции. почему? как грамотно эту инструкцию записать в исходнике?

Я нашел только один выход: вместо JMP 0F80H:100H написать DB 0EAH,00H,01H,80H,0FH (маш. код)


--------------------
DOS... Синей пеленой экран заполнил чистый DOS 
Мышь... Стала вдруг квадратной, потеряла форму мышь... 
Я разбил окно, девяностопятое мастдайное окно, 
И поставил DOS, и тогда увидел: Это счастье, — вот оно.  
PM MAIL WWW   Вверх
500mhz
Дата 26.11.2010, 00:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


шайтан
***


Профиль
Группа: Завсегдатай
Сообщений: 1017
Регистрация: 5.5.2008
Где: Киев / Italy

Репутация: нет
Всего: 14



не помню точно но по моему в тасме что то типа FAR нада было указывать


--------------------

PM MAIL ICQ   Вверх
spin2
Дата 26.11.2010, 12:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 598
Регистрация: 15.12.2005
Где: Москва-Одесса

Репутация: нет
Всего: 31



iff, а что именно тебе пишут? Может просто слишком далеко прыгаешь?


--------------------
"С кем тяжело молчать, с тем не о чем говорить" (Метерлинк)
блог
Все об ICQ-ботах
PM MAIL WWW ICQ Skype Jabber   Вверх
iff
Дата 26.11.2010, 14:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Администратор
**


Профиль
Группа: Участник
Сообщений: 948
Регистрация: 23.3.2007

Репутация: 5
Всего: 16



JMP не может слишком далеко прыгать. Вот инструкции JE, JNE, JA и т.п. - да, они поддерживают только близкие переходы, а JMP может прыгать от 0000:0000 до FFFF:FFFF. Во всяком случае программа debug нормально транслирует эти инструкции (я ведь машинный код DB 0EAH,00H,01H,80H,0FH при помощи debug нашел, и он работает).

500mhz, указывал far, всеравно пишет Illegal immediate.

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



--------------------
DOS... Синей пеленой экран заполнил чистый DOS 
Мышь... Стала вдруг квадратной, потеряла форму мышь... 
Я разбил окно, девяностопятое мастдайное окно, 
И поставил DOS, и тогда увидел: Это счастье, — вот оно.  
PM MAIL WWW   Вверх
500mhz
Дата 26.11.2010, 15:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


шайтан
***


Профиль
Группа: Завсегдатай
Сообщений: 1017
Регистрация: 5.5.2008
Где: Киев / Italy

Репутация: нет
Всего: 14



)))
push
push 
ret


ну если че )))


--------------------

PM MAIL ICQ   Вверх
iff
Дата 26.11.2010, 17:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Администратор
**


Профиль
Группа: Участник
Сообщений: 948
Регистрация: 23.3.2007

Репутация: 5
Всего: 16



500mhz, пишу загрузочный сектор для диска (512 байт), поэтому не хочу применять громосткие решения. Да и просто хочу, что бы в том месте где нужно инструкция JMP была инструкция JMP

Остановился пока что на том, чтобы использовать всавку машинного кода:
Код

DB    0EAH,00H,01H,80H,0FH



--------------------
DOS... Синей пеленой экран заполнил чистый DOS 
Мышь... Стала вдруг квадратной, потеряла форму мышь... 
Я разбил окно, девяностопятое мастдайное окно, 
И поставил DOS, и тогда увидел: Это счастье, — вот оно.  
PM MAIL WWW   Вверх
500mhz
Дата 26.11.2010, 18:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


шайтан
***


Профиль
Группа: Завсегдатай
Сообщений: 1017
Регистрация: 5.5.2008
Где: Киев / Italy

Репутация: нет
Всего: 14



а таки надо прям на тасме это делать?


--------------------

PM MAIL ICQ   Вверх
Logree
Дата 27.11.2010, 11:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 329
Регистрация: 22.11.2006
Где: Самара

Репутация: 1
Всего: 2



 smile 
fasm создан для того чтобы писать загрузочные сектора smile


--------------------
Самый распространенный способ дебага пятиста строк ассемблерного кода - очень долгий, очень пристальный и очень задумчивый взгляд.
PM MAIL ICQ   Вверх
500mhz
Дата 27.11.2010, 14:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


шайтан
***


Профиль
Группа: Завсегдатай
Сообщений: 1017
Регистрация: 5.5.2008
Где: Киев / Italy

Репутация: нет
Всего: 14



вот именно )))

в фасме jmp 0000:0000 компилится на ура


--------------------

PM MAIL ICQ   Вверх
newsoft
Дата 5.1.2012, 09:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 5.1.2012

Репутация: нет
Всего: нет




jmp    far ptr 0f80h:100h

PM MAIL   Вверх
iff
Дата 13.12.2016, 19:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Администратор
**


Профиль
Группа: Участник
Сообщений: 948
Регистрация: 23.3.2007

Репутация: 5
Всего: 16



Спасибо


--------------------
DOS... Синей пеленой экран заполнил чистый DOS 
Мышь... Стала вдруг квадратной, потеряла форму мышь... 
Я разбил окно, девяностопятое мастдайное окно, 
И поставил DOS, и тогда увидел: Это счастье, — вот оно.  
PM MAIL WWW   Вверх
Google
  Дата 21.9.2019, 18:12 (ссылка)  





  Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Asm: Общие вопросы"
MAKCim
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой КОД.
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim.

 
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Asm: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1016 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.