IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Вызов Asm-модуля
Jill
сообщение 8.12.2005 0:18
Сообщение #1


Пионер
**

Группа: Пользователи
Сообщений: 105
Пол: Женский
Реальное имя: Юлия

Репутация: -  0  +


Подскажите, куда положить файл addaI.obj, если программа начинается с {$l addaI}?

Сорри, может кривой вопрос, но...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 13)
volvo
сообщение 8.12.2005 0:22
Сообщение #2


Гость






В текущую директорию - самое надежное... (не зависит от настроек среды программирования)
 К началу страницы 
+ Ответить 
GoodWind
сообщение 8.12.2005 0:25
Сообщение #3


Автооответчик
*****

Группа: Модераторы
Сообщений: 1 188
Пол: Мужской
Реальное имя: Александр

Репутация: -  16  +


в папку, которая указана в Options->Directories->include


--------------------
Неадекватная чушь может быть адекватным ответом на неадекватный вопрос. Понятно или разжевать?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 8.12.2005 0:26
Сообщение #4


Гость






GoodWind, blum.gif
А если на другой машине придется компилировать? Так и будет по папкам лазить?

Кстати, не "Include", а "Object directories"
 К началу страницы 
+ Ответить 
GoodWind
сообщение 8.12.2005 0:32
Сообщение #5


Автооответчик
*****

Группа: Модераторы
Сообщений: 1 188
Пол: Мужской
Реальное имя: Александр

Репутация: -  16  +


да лан... негде было посмотреть wink.gif
раз директива Include, значит и папка должна быть указана как Include =)
твоя правда yes2.gif


--------------------
Неадекватная чушь может быть адекватным ответом на неадекватный вопрос. Понятно или разжевать?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Jill
сообщение 9.12.2005 12:22
Сообщение #6


Пионер
**

Группа: Пользователи
Сообщений: 105
Пол: Женский
Реальное имя: Юлия

Репутация: -  0  +


Ребят, не выходит :-(

Штука в чем. Задача на сложение целых чисел с использованием ассемблера. Пример как раз соответствует моему варианту, а я его запустить не могу :-( Как такового файла addaI.obj в папке с примером нет - создавала сама, но он пустой (я не могу разобраться, должно ли быть что-то в нем и что?)

Файл кидала в указанные вами директории - не запускается прога.

Может, я изначально туплю?



Помогите разобраться, плз! В воскресенье еду на сессию...

Сообщение отредактировано: Jill - 9.12.2005 12:24
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Jill
сообщение 9.12.2005 12:38
Сообщение #7


Пионер
**

Группа: Пользователи
Сообщений: 105
Пол: Женский
Реальное имя: Юлия

Репутация: -  0  +


Ребят, пошаманила - прохавало оно {$l addaI}!!!

Тока теперь Undefined exernal(xS)...

Может, перенесем топ в задачи? Не хочу дублировать... Я листинг там кину...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 9.12.2005 13:07
Сообщение #8


Гость






Кидай исходник ASM и PAS ... Скорее всего - просто в ASM коде процедура/функция не объявлена как "внешняя"
 К началу страницы 
+ Ответить 
Jill
сообщение 9.12.2005 14:08
Сообщение #9


Пионер
**

Группа: Пользователи
Сообщений: 105
Пол: Женский
Реальное имя: Юлия

Репутация: -  0  +


volvo, там 5 файлов wink.gif
Поразбиралась. Проблема в исходнике только в том, что при выполнении выдает ошибку. Хотя работает и считает, но в самом конце...закрывается паскаль и окошко "невыполнимая функция" (вроде так). Но с этим - фиг с ним! Не первоочередная проблема. Это потом.

volvo, у меня сейчас еще вопрос возник. Исходник - вычисления для пяти типов данных. Мне же надо только для Integer. Я пробовала удалялять лишнее, но прога не находит какие-то переменные, а я не могу найти, где я их поубивала unsure.gif Подскажи, плз!

Цепляю рар - там 5 файлов. Это исходный - без моих правок


Прикрепленные файлы
Прикрепленный файл  5in1.rar ( 5.15 килобайт ) Кол-во скачиваний: 104
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 9.12.2005 14:27
Сообщение #10


Гость






Jill, не знаю, я тут поколдовал немного, чего-то натворил... Проверь...


Прикрепленные файлы
Прикрепленный файл  5in1.rar ( 4.57 килобайт ) Кол-во скачиваний: 98
 К началу страницы 
+ Ответить 
Jill
сообщение 9.12.2005 14:42
Сообщение #11


Пионер
**

Группа: Пользователи
Сообщений: 105
Пол: Женский
Реальное имя: Юлия

Репутация: -  0  +


запускается smile.gif

токо результат я не успеваю прочитать - все закрывается и выдается ошибка (скриншот цепляю) mega_chok.gif
блин


Эскизы прикрепленных изображений
Прикрепленное изображение
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 9.12.2005 15:22
Сообщение #12


Гость






Попробуй запустить мой EXE... Если запустится, то проблема с компилятором, если нет - то что-то с NTVDM не то... У меня нормально отрабатывает.


Прикрепленные файлы
Прикрепленный файл  work3add.rar ( 12.72 килобайт ) Кол-во скачиваний: 108
 К началу страницы 
+ Ответить 
Jill
сообщение 9.12.2005 15:35
Сообщение #13


Пионер
**

Группа: Пользователи
Сообщений: 105
Пол: Женский
Реальное имя: Юлия

Репутация: -  0  +


работает :-)

пасиба, увидела результат - мне больше ничего не надо ;-)

еще пару вопросов по листингу

var {Описание ГЛОБАЛЬНЫХ переменных}
a,b,x : LongInt;
{(*}
xS,aS,bS: ShortInt;
xB,aB,bB: Byte;
{*)}
xI,aI,bI: Integer;
{(*}
xW,aW,bW: Word;
{*)}
ch : Char;



Переменные LongInt, ShortInt, Byte, Word можно поубивать? Или это...черевато?

И в ADDAI.ASM - повырезать все процедуры кроме для Integer?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 9.12.2005 17:21
Сообщение #14


Гость






Цитата
Переменные LongInt, ShortInt, Byte, Word можно поубивать? Или это...черевато?
Ничем не чревато... Убирай переменные для всего, кроме Integer и файл ASM будет таким:
        title addaL (CopyRight by ƒ®«דЎל �.ƒ., 1993-1997)
.MODEL Large, Pascal
;x=a+b x,a,b:LongInt, Byte, ShortInt, Integer, Word
.data
Extrn xI:Word,aI:Word,bI:Word
.code
Public addaI
addaI proc far
mov ax, aI ; ax <=== aI
mov cx, bI ; cx <=== bI
add ax,cx ; <ax>:=<ax>+<cx>
mov xI,ax ; xI <=== <ax>
ret
addaI endp
end
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 23.06.2025 21:30
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"