|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Сен 5, 2004 19:48:34 В 1.asm есть место: ; cmp flag_execute,3 ; je short crypt_bits На которое ассемблер говорит превышен jmp на 0fh байт! Пробывал je near crypt_bits,но меня учат так: Expecting pointer type Можно ли обойти это как-нить? ЗЫ: Ну, а где оптимизировать можно тоже буду рад! 1629998851__crypt.asm |
|
|
Дата: Сен 5, 2004 20:47:59 Зачем такая куча процессорных директив ? И оно не работает без macro.lib - загрузи и его. |
|
|
Дата: Сен 5, 2004 21:25:25 А просто je crypt_bits ? |
|
|
Дата: Сен 5, 2004 22:16:12 stas НЕа не работает, сегдня ночью не заработает кину код тебе на мыл |
|
|
Дата: Сен 5, 2004 22:42:34 |
|
|
Дата: Сен 5, 2004 23:00:45 Это глюк какой-то. Очевидно же, что в первом случае компилер ругался на слишком большое расстояние для короткого перхода. Но на что он ругался во втором? Может в TASM какая-то своя специфика.. Зачем .386 и .286 по всему файлу раскидал, может из-за этого проблемы? Поставь в начале файла .386 да и всё. |
|
|
Дата: Сен 6, 2004 08:53:52 S_T_A_S_ Некоторых, действительно можно было бы избежать. Но это мой первый опыт с инструкциями 386 проца! Так что первый блин всегда глюком |
|
|
Дата: Сен 6, 2004 08:55:27 · Поправил: leo "Может в TASM какая-то своя специфика.." Возможно. Помнится в TP и дельфах было примечание, что все условные переходы у них рассматриваются как short и если нужен near переход, то следует использовать комбинацию: jne @@ jmp crypt_bits @@: |
|
|
Дата: Сен 6, 2004 09:18:53 Ребята вы чего ? Всю жизнь условные команды были с short адресом. По крайней мере до 486-го. |
|
|
Дата: Сен 6, 2004 13:09:52 И чо теперь всю жизнь такое извращение применять? |
|
|
Дата: Сен 6, 2004 18:21:37 Ну сказал же знающий чаловек - делай .486 |
|
|
Дата: Сен 7, 2004 13:25:01 Ну сказал же знающий чаловек - делай .486 Имелось ввиду до 486 включительно. Информация взята из программы TechInfo 6.0( для ДОС-а) и там Пентиум тоже упоминается, но я не стал рисковать..... У Интела все процессоры с этой гадостью : например, 8051. |
|
|
Дата: Сен 7, 2004 20:48:55 А вот что говорит Книга Двойных Слов: The following instructions were added in the Intel386 processor: ... -- Long-displacement conditional jumps. ... |
|
|
Дата: Сен 8, 2004 04:12:11 valterg > У Интела все процессоры с этой гадостью : например, 8051. Ну не совсем все, в i8080 вообще не было ни коротких, ни относительных переходов. captain cobalt Это наверное какая-то старая книга. Те, которые присылают по почте, этого не содержат. |
|
|
Дата: Сен 8, 2004 07:27:01 Напротив, это самая новая книга. Из комплекта, в котором второй том занимает две книги. Это цитата из VOLUME 3, CHAPTER 18, IA-32 COMPATIBILITY. |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.108 |