Порты, определить их число |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Порты, определить их число |
Catty |
Сообщение
#1
|
Бывалый Группа: Пользователи Сообщений: 239 Пол: Женский Реальное имя: Юлия Репутация: 3 |
Надо написать прогу на паскале которая бы определяла число
подключенных последовательных портов. :flowers: -------------------- For every evil under the sun
There is a remedy or there is none If there is one - try to find it If there is none - never mind it! |
volvo |
Сообщение
#2
|
Гость |
Catty, насколько я помню, это делается вот так:
Байт по адресу 0000:0411h в первом, втором и третьем битах содержит общее количество установленных COM-портов, а в шестом и седьмом - количество LPT-портов. Отсюда - Код var counter: byte absolute $0000:$0411; begin writeln('Число установленных COM портов: ',(counter shr 1) and $07); writeln('Число установленных LPT портов: ', counter shr 6) end. |
Romtek |
Сообщение
#3
|
Знаток Группа: Пользователи Сообщений: 303 Пол: Мужской Реальное имя: Роман Репутация: 2 |
Загляни в http://pascal.sources.ru/comm/index.htm - Коммуникации
-------------------- Romiras HomeLab- материалы и статьи по разработке ПО, моделирование алгоритмов, обработка и анализ информации, нейронные сети, машинное зрение и прочее.
|
Catty |
Сообщение
#4
|
Бывалый Группа: Пользователи Сообщений: 239 Пол: Женский Реальное имя: Юлия Репутация: 3 |
Спасибо!! :flowers:
если у кого еще есть какие-то соображения на это счет то кидайте тоже, не стесняйтесь! -------------------- For every evil under the sun
There is a remedy or there is none If there is one - try to find it If there is none - never mind it! |
Catty |
Сообщение
#5
|
Бывалый Группа: Пользователи Сообщений: 239 Пол: Женский Реальное имя: Юлия Репутация: 3 |
volvo a что означает такое объявление типа данных- counter: byte absolute $0000:$041?
и что такое shr? -------------------- For every evil under the sun
There is a remedy or there is none If there is one - try to find it If there is none - never mind it! |
volvo |
Сообщение
#6
|
Гость |
Catty, объявляем counter типа byte, но располагаться он будет не там, где захочет компилятор, а по адресу, который указан после Absolute (то есть, фактически мы говорим компилятору, что все действия, которые программа производит с counter-ом на самом деле производятся с байтом, находящимся по адресу $0000:$0411 - в BIOS)...
А shr - это сдвиг на указанное число бит вправо... Надо же как-то выделить нужные биты из байта... вот и сдвигаем байт так, что нужные биты находятся в крайних справа позициях. |
Catty |
Сообщение
#7
|
Бывалый Группа: Пользователи Сообщений: 239 Пол: Женский Реальное имя: Юлия Репутация: 3 |
Понятно! Спасибо! :flowers:
-------------------- For every evil under the sun
There is a remedy or there is none If there is one - try to find it If there is none - never mind it! |
Catty |
Сообщение
#8
|
Бывалый Группа: Пользователи Сообщений: 239 Пол: Женский Реальное имя: Юлия Репутация: 3 |
А вот мне еще нужно определить объем дополнительной памяти!
Объем дополнительной памяти: Ячейки 16H и 17H содержат соответственно младший и старший байты размера дополнительной памяти (расположенной выше 1М) в кило- байтах. можно написать data: byte absolute $16:$17, а потом вывесли значение data, или это будет не правильно? -------------------- For every evil under the sun
There is a remedy or there is none If there is one - try to find it If there is none - never mind it! |
volvo |
Сообщение
#9
|
Гость |
Catty
Цитата Ячейки 16H и 17H содержат соответственно младший и старший байты Немного не так: Ячейки 17h и 18h содержат, соответственно, младший и старший байты размера дополнительной памяти (расположенной выше границы 1 М) в килобайтах... Код var data: word absolute $0000:$0017; begin writeln('Дополнительная память:', data) end. |
Catty |
Сообщение
#10
|
Бывалый Группа: Пользователи Сообщений: 239 Пол: Женский Реальное имя: Юлия Репутация: 3 |
Мне выводит 2, значит что доп. рамять 2 Кб??
-------------------- For every evil under the sun
There is a remedy or there is none If there is one - try to find it If there is none - never mind it! |
volvo |
Сообщение
#11
|
Гость |
Catty, посмотри внимательно: я написал word а не byte
нам же нужны 2 байта, а это уже Word... |
Catty |
Сообщение
#12
|
Бывалый Группа: Пользователи Сообщений: 239 Пол: Женский Реальное имя: Юлия Репутация: 3 |
я забыла сменить byte на word .
С word выводит 16386! это в Кб? -------- зы Олежик почему я не могу удалит свое сообщение!!?? -------------------- For every evil under the sun
There is a remedy or there is none If there is one - try to find it If there is none - never mind it! |
Catty |
Сообщение
#13
|
Бывалый Группа: Пользователи Сообщений: 239 Пол: Женский Реальное имя: Юлия Репутация: 3 |
еще такой вопрос, а почему мы пишем $0000:$0017?почему именно так?
-------------------- For every evil under the sun
There is a remedy or there is none If there is one - try to find it If there is none - never mind it! |
volvo |
Сообщение
#14
|
Гость |
А нам нужны 2 последовательных байта: 17Н (это $0000:$0017) и 18Н (то же, что $0000:$0018), то есть слово (Word), которое начинается здесь: $0000:$0017
|
Altair |
Сообщение
#15
|
Ищущий истину Группа: Пользователи Сообщений: 4 825 Пол: Мужской Реальное имя: Олег Репутация: 45 |
offtop
Цитата Олежик почему я не могу удалит свое сообщение!!?? сделал. -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
Catty |
Сообщение
#16
|
Бывалый Группа: Пользователи Сообщений: 239 Пол: Женский Реальное имя: Юлия Репутация: 3 |
Кажеться поняла! :flowers:
-------------------- For every evil under the sun
There is a remedy or there is none If there is one - try to find it If there is none - never mind it! |
Текстовая версия | 23.12.2024 19:24 |