Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.12.2013, 20:26   #11
ZX Spectrum-128
Участник клуба
 
Регистрация: 05.11.2013
Сообщений: 1,601
По умолчанию

Эмулятор dos проще всегопоставить
Dosbox
ZX Spectrum-128 вне форума Ответить с цитированием
Старый 13.12.2013, 20:28   #12
zla9_kolu4ka
Форумчанин
 
Регистрация: 16.09.2013
Сообщений: 149
По умолчанию

Код:
 Из комплекта турбо паскаля?
У меня тасм стоит отдельно на виртуальной машине, я просто копирую файл .obj
Вообще я могу нести чушь, потому что я не знаю, как работает все это в связке, поэтому говорю что первое приходит на ум
zla9_kolu4ka вне форума Ответить с цитированием
Старый 13.12.2013, 20:29   #13
zla9_kolu4ka
Форумчанин
 
Регистрация: 16.09.2013
Сообщений: 149
По умолчанию

Цитата:
Dosbox
Там файловая оболочка нормальная нужна будет, а far не работает в ДОС, а нортон вообще не нравится, он не поддерживает длинные имена, русский шрифт, самое главное когда заходишь в папку, far их все видит, написал одну букву, он автоматически остальное подставляет, а в Нортоне такого нету, там все приходится писать полностью, все пути, хотя может мне попался такой дурацкий нортон
И вообще какие норм файловые оболочки под дос?

Последний раз редактировалось zla9_kolu4ka; 13.12.2013 в 20:32.
zla9_kolu4ka вне форума Ответить с цитированием
Старый 13.12.2013, 20:39   #14
ZX Spectrum-128
Участник клуба
 
Регистрация: 05.11.2013
Сообщений: 1,601
По умолчанию

Dos navigator
http://www.izone.ru/disk/shells/dos-navigator.htm

Последний раз редактировалось ZX Spectrum-128; 13.12.2013 в 20:43.
ZX Spectrum-128 вне форума Ответить с цитированием
Старый 13.12.2013, 23:21   #15
zla9_kolu4ka
Форумчанин
 
Регистрация: 16.09.2013
Сообщений: 149
По умолчанию

Код:
Program mov16;
var
x,a:    integer;
b,z:    byte;

Procedure mov_16(var x:integer;var z:Byte);
begin
writeln('Вычислить: x=a a,x: integer;');
write('Введите значение a ');
readln(a);
x:=a;
writeln('Вычислить z=b; b,z:byte;');
write('Введите значение b ');
readln(b);
z:=b;
writeln('ПАСКАЛЬ: x=',x,' z= ',z );
z:=0;
x:=0;
mov_16(x,z);
writeln('АССЕМБЛЕР: x=',x,' ;z= ',z);
readln
end.

А как тут асм вызывается?
У меня и без асмовского файла норм компилируется!!
В чем тогда прикол?
zla9_kolu4ka вне форума Ответить с цитированием
Старый 13.12.2013, 23:26   #16
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
А как тут асм вызывается?
никак. Тут нет вызова asm'а

я Вам больше скажу.
Ваш код вообще не будет компилироваться, ибо он ошибочен.
И более того, если Вы закроете описание процедуры mov_16 (там end'а не хватает),
напишите основное тело программы и вызов mov_16 - программа всё равно работать не будет - рекурсивых вызов процедуры быстро приведёт к зацикливанию -> переполнению стека.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 13.12.2013, 23:35   #17
zla9_kolu4ka
Форумчанин
 
Регистрация: 16.09.2013
Сообщений: 149
По умолчанию

Цитата:
я Вам больше скажу.
Ваш код вообще не будет компилироваться, ибо он ошибочен.
почему, работает!
компилятор Free Pascal
свободно распространяемый компилятор языка Паскаль. Он совместим с Borland Pascal 7 и Object Pascal. Работает в x64
IDE - LazaRus
Удобнее чем DosNavigator, кстате DN такой же отстой, как NC

Последний раз редактировалось zla9_kolu4ka; 13.12.2013 в 23:42.
zla9_kolu4ka вне форума Ответить с цитированием
Старый 13.12.2013, 23:48   #18
ZX Spectrum-128
Участник клуба
 
Регистрация: 05.11.2013
Сообщений: 1,601
По умолчанию

Вы не поняли. Вы вызываете процедуру саму из себя.
ZX Spectrum-128 вне форума Ответить с цитированием
Старый 13.12.2013, 23:50   #19
zla9_kolu4ka
Форумчанин
 
Регистрация: 16.09.2013
Сообщений: 149
По умолчанию

Во заморочки, а я думала тут вызов асмовского кода:
mov_16(x,z);
а это:
Procedure mov_16(var x:integer;var z:Byte);
описание на паскале, а это:


Код:
.model  large
.data
extrn   a:word,x:word
extrn   b:byte,z:byte
.code
public  mov_16
mov_16  proc far
mov ax,a
mov bl,b
mov x,ax
mov z,bl
ret
mov_16  endp
end
определение на асме
аха


Я неправильно поняла, что в книге хотели сказать

Последний раз редактировалось zla9_kolu4ka; 13.12.2013 в 23:53.
zla9_kolu4ka вне форума Ответить с цитированием
Старый 13.12.2013, 23:51   #20
ZX Spectrum-128
Участник клуба
 
Регистрация: 05.11.2013
Сообщений: 1,601
По умолчанию

Если я правильно помню, должно быть так описание:

Procedure mov_16(var x:integer;var z:Byte); еxtermal;
ZX Spectrum-128 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
меню(асм) A.S.W Фриланс 1 21.08.2011 20:49
асм (с%о) Ислам Помощь студентам 7 21.05.2011 09:11
Перевод из асм в с++ Flay Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 6 18.09.2010 21:05
Умножение массивов Паскаль+АСМ xVxSeRGxVx Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 24 21.02.2010 14:11