![]() |
|
|
![]()
|
|
| St. Andrew |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 142 Регистрация: 28.3.2005 Где: Санкт-Петербург Репутация: 1 Всего: 8 |
Уважаемые коллеги, помогите пожалуйста! У меня появилась проблема со встроенным ассемблером в Паскале (TP 7.0). У меня имеется ассемблерная вставка размером примерно 150-180 строчек, состоящая из команд процессора и сопроцессора, зачастую - команды двух этих устройств чередуются. Ошибок в самих операторах нет. Проблема в том, что компилятор Паскаля при некотором количестве операторов начинает выдавать ошибку номер 161 "Code generation error", указывая на последнюю строку программы в Паскале (на последний end). Но стоит закомментировать любые строчек 7-10 ассемблерной вставки, как сразу все компилируется без проблем. Подскажите, пожалуйста, в чем дело?
Есть два предположения: 1) Нарушается некоторый максимальный размер вставки 2) Нарушается синхронизация процессора и сопроцессора Не первое, ни второе подтвердить или опровергнуть сам не могу... Нужна помощь! --------------------
Оглянитесь вокруг! В мире так много прекрасного! |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 1 Всего: 454 |
Предположение 2 отметаем - оно может влиять на работу приложения, но никак не на сборку.
Предположение 1 вполне может иметь место. Попробуй разделить АСМовскую вставку на две идущие подряд... -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| St. Andrew |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 142 Регистрация: 28.3.2005 Где: Санкт-Петербург Репутация: 1 Всего: 8 |
Akina, ты оказался прав! После долгих мучений до меня наконец-то дошло, что причина в слишком длинном переходе в команде loop , которая просто-напросто не видела далеко стоящую метку... В ТАСМе это бы сразу понятно было, а это - гнусный Паскаль.
--------------------
Оглянитесь вокруг! В мире так много прекрасного! |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 1 Всего: 454 |
И не должен был. Ассемблерные вставки в нем - это костыль для тех, кто не может оформить процедуру на АСМе, скомпилировать и подключить объектный файл в проект. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| St. Andrew |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 142 Регистрация: 28.3.2005 Где: Санкт-Петербург Репутация: 1 Всего: 8 |
В общем-то да, правильно говоришь - костыль самый натуральный! Но на самом деле, несколько страшно подключать объектный файл. Дело в том, что компьютеры, на которых все будет демонстрироваться своей немощностью и старостью вызывают благоговейный ужас. Самое их уникальное качество - программу приходится каждый раз набирать заново, т.к. единственно устройство связи с внешним миром на тех компах - 5.25 дисковод. Если добавить к этому еще и устаревшую версию Паскаля (где-то около 3.0) , то невольно осознаешь тот элементарный факт , что "чем проще-тем лучше".
Да, звучит бредово, но это - печальная российская действительность! Остается только копить на ноутбук и сдавать преподу все досрочно --------------------
Оглянитесь вокруг! В мире так много прекрасного! |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 1 Всего: 454 |
Это еще почему? TPU-шки тебе подключать не страшно? а ведь это не что иное как библиотека OBJ-файлов особенного формата... просто когда весь мир принял структуру .LIB, Борланд выпендрился... -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| St. Andrew |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 142 Регистрация: 28.3.2005 Где: Санкт-Петербург Репутация: 1 Всего: 8 |
Akina, дело говоришь! Когда буду писать для более серьезных целей, чем сейчас - обязательно воспользуюсь советом! Спасибо!
--------------------
Оглянитесь вокруг! В мире так много прекрасного! |
|||
|
||||
![]()
|
| Правила форума "Asm для начинающих" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Asm для начинающих | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |