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

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

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.11.2011, 22:14   #1
Straif
 
Регистрация: 01.11.2011
Сообщений: 4
По умолчанию Из LPT на COM

Доброго времени суток! Уважаемые программисты, обращаюся к вам с просьбой: не могу доделать программу, сам программирую на Delphi и C #, но Ассемблер является инопланетным языком.
Так вот есть код для LPT порта
begin
set_port:=255;
asm
mov dx,37ah
mov al,set_port
out dx,al

//in al,dx
//mov data,al
end;

IntervalCount:=0;
SetLength(IntervalData,0);
ListBox1.Clear;
FTick1:=GetTickCount;
//data:=253;
for i:=1 to 4000000 do // 4000000
begin
asm
mov dx,378h
in al,dx
mov data,al
end;
вот асм вырезка, но не могу переписать на COM порт.
Помогите, пожалуйста. Очень прошу.
Straif вне форума Ответить с цитированием
Старый 02.11.2011, 03:59   #2
Mikl___
Участник клуба
 
Регистрация: 11.01.2010
Сообщений: 1,139
По умолчанию

Straif
Разницу между LPT и COM-портом знаешь? LPT - это параллельный порт и одновременно через него можно передавать 8 бит данных, COM - это последовательный порт и через него данные будут передаваться по 1 биту. Если программируешь на Delphi и C # то и напиши на них аналогичную программу, а затем через отладчик посмотри в какие ассемблерные команды это всё превращается...
Mikl___ вне форума Ответить с цитированием
Старый 02.11.2011, 04:06   #3
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

эмм, а ничего что код на Делфи не должен работать?(максимум из ДОСовского паскаля)
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 02.11.2011, 05:25   #4
Mikl___
Участник клуба
 
Регистрация: 11.01.2010
Сообщений: 1,139
По умолчанию

Пепел Феникса
В таких случаях (под Win NT) из Дельфи обращаются к LPT и СОМ как к файлам с именами LPT и СОМ смотрим здесь, Win 95/98 позволял обращаться к портам LPT и СОМ напрямую через порты ввода/вывода, и разве из Дельфи нельзя создать ДОС-приложение?

Последний раз редактировалось Mikl___; 02.11.2011 в 05:34.
Mikl___ вне форума Ответить с цитированием
Старый 02.11.2011, 13:02   #5
Tronix
Форумчанин
 
Аватар для Tronix
 
Регистрация: 15.06.2010
Сообщений: 740
По умолчанию

Не, дельфя не умеет DOS-приложения. Оно генерит PE или, в случае с Delphi ver 1 - NE заголовки. Может путаете DOS-проги и консольные проги?
Чтобы понять рекурсию, сперва нужно понять рекурсию.
Tronix вне форума Ответить с цитированием
Старый 02.11.2011, 13:39   #6
Mikl___
Участник клуба
 
Регистрация: 11.01.2010
Сообщений: 1,139
По умолчанию

Tronix
я имел ввиду DOS, по-моему, Си-билдер, от того же Борланда, мог создавать DOS-приложения, хотя я не уверен
Mikl___ вне форума Ответить с цитированием
Старый 02.11.2011, 13:49   #7
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

...giveo.sys и будет

p.s.: чего это все так всполошились, где TC упомянул о DOS-е, а ?
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 02.11.2011, 14:08   #8
Mikl___
Участник клуба
 
Регистрация: 11.01.2010
Сообщений: 1,139
По умолчанию

raxp
о ДОСе Пепел Феникса написал, но это и так понятно, что без ДОСа In/Out будут вызывать эксепшен
Mikl___ вне форума Ответить с цитированием
Старый 02.11.2011, 14:41   #9
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

просто я хотел чтоб ТС знал, что
Цитата:
Так вот есть код для LPT порта
в Делфи не будет работать, что там немного сложнее/проще(кому как)/иначе короче.

а про то как работать я знаю.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 02.11.2011, 15:49   #10
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

...еще раз: giveo и все будет работать и в Delphi и под win.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
LPT ПОРТ master3763 Общие вопросы C/C++ 7 11.08.2009 10:32
LPT Hesheit Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 27.06.2009 12:44
Работа с LPT. Levsha100 Помощь студентам 2 13.09.2008 21:27