1 / 0 / 0
Регистрация: 01.12.2010
Сообщений: 12
|
|||||||||||
какие биты на каком порту и за что отвечают?21.12.2010, 13:16. Показов 6516. Ответов 5
Метки нет Все метки)
(
0
|
21.12.2010, 13:16 | |
Ответы с готовыми решениями:
5
Стоит 4 гига. Windows7 64. Что лучше сделать,отключить часть процесса автозапуска,а какие за что отвечают не пойму, или докупить ещё планок памяти? CMA Candy CSW 105, Какие вывода прессостата, за что отвечают. Регулировка
|
Ушел с форума
![]() ![]() 16355 / 7671 / 1078
Регистрация: 11.11.2010
Сообщений: 13,730
|
|
22.12.2010, 04:22 | |
klesvart, это будет зависеть от номера порта и договоренностью между разработчиками аппаратуры. Портов на самом деле не 256 а 64к просто для доступа к младшим портам можно использовать непосредственный номер а для портов с номерами больше 255 номер порта задается через регистр DX.
Порт – это как бы канал связи микропроцессора с внешним миром. Через порт микропроцессор получает сигналы от устройств ввода, либо посылает сигналы на устройства вывода. Теоретически микропроцессор управляет 65536 портами, начиная с нулевого порта. Для управлением вводом-выводом непосредственно на уровне порта используются команды IN и OUT. Каждое устройство (винчестер, видео-, звуковая карта и т.д.) имеет несколько портов, через которые осуществляется управление. Порты 70h и 71h соответствуют CMOS’у. Чтобы программировать CMOS, надо сначала вывести в порт 70h то, что вы хотите изменить в CMOS’е (дата, время, настройки винчестера, пароль), а затем ввести в порт 71h новое значение (дату, время, параметры винчестера и так далее). Сначала выводим в порт 70h число 5Eh, которое означает, что мы будем изменять настройку пароля ON/OFF. Затем выводим в порт 71h ноль, что соответствует отключению пароля (чтобы пароль включить, надо вывести единицу). Кроме CMOS'а, напрямую через порты ввода/вывода можно управлять клавиатурой, системным динамиком, винчестером, флоппиком, видеоадаптером, таймерами, принтером, сканером а также микропроцессорами для управления потоком данных. Микропроцессор IA32/64 имеет два различных физических адресных пространства: ПАМЯТЬ и ВВОД/ВЫВОД. Обычно, внешние устройства помещаются в пространстве ВВОДА/ВЫВОДА, хотя микропроцессор IA32/64 также поддерживает внешние устройства распределения памяти. Объем пространства ВВОД/ВЫВОД 64Кбайт и может быть разделено на 64К 8-разрядных портов, 32К 16-разрядных портов, 16К 32-разрядных портов или другую комбинацию устройств, которые в сумме не превышает 64 Кбайт. 64К адресное пространство ВВОД/ВЫВОДА относится к физической памяти, а не к линейному адресу, поскольку команды ввода/вывода не проходят через устройства, выполняющие сегментацию или разбиение на страницы. Для работы памяти ВВОДА/ВЫВОДА задействована дополнительная адресная линия M / IO, позволяющая определить, к какому адресному пространству в настоящее имеет доступ микропроцессор. Доступ к портам ВВОДА/ВЫВОДА можно получить через команды: IN (операнд) или OUT (операнд), где операнд содержит адрес порта в виде непосредственного операнда (если не превышает 256) или находится в регистре DX. Все 8 и 16 бит адреса порта имеют нулевое расширение (то есть не расширяются) на верхних адресных линиях. Команды ввода/вывода вызывают цикл ожидания, так как работают гораздо медленнее микропроцессора.
1
|
1 / 0 / 0
Регистрация: 01.12.2010
Сообщений: 12
|
|
22.12.2010, 22:19 [ТС] | |
А каие порты нужно знать для написания ос, используя стандартные средства мат платы, мож достаточно CMOS изучить(я подозреваю)? Или " другая мамка - другой порт","другой СMOS - другие биты на портах"? Так я вас понял?
Добавлено через 27 минут Может быть стандарты какие ессть? К слову Я просто увидел строчки текста которые хочется копнуть глубже! Но земля твердая(мож я мороз) Мож дока какая есть где-нить в формате: 92h bit8 - открытие линии A20:1 открыта, 0 закрыта. 70h зн.12h работаем с тем-то на порту 71h! Вот типа как вы описали 70h порт.Только ххh - время, ххh дата... Растерялся совсем! ![]()
0
|
Ушел с форума
![]() ![]() 16355 / 7671 / 1078
Регистрация: 11.11.2010
Сообщений: 13,730
|
|
23.12.2010, 04:48 | |
klesvart, назначение битов в CMOSе я расписал в теме Объем CMOS по остальным портам научись наконец использовать Google и учебники
![]()
0
|
2014 / 1286 / 61
Регистрация: 05.06.2010
Сообщений: 2,213
|
|
23.12.2010, 08:33 | |
klesvart, возьми учебник Зубкова, "Assembler-язык неограниченных возможностей" раздел 5.10 - "Программирование на уровне портов ввода-вывода" - там найдешь на половину нужной информации, или Кулаков - "Программирование на аппаратном уровне" - там всё.
0
|
1 / 0 / 0
Регистрация: 01.12.2010
Сообщений: 12
|
|
23.12.2010, 12:27 [ТС] | |
Спасибо большое ! Буду читать.
0
|
23.12.2010, 12:27 | ||||||
Помогаю со студенческими работами здесь
6
Какие классы в .NET отвечают за переполнение буфера?
Какие пины отвечают за вход и выход в ATMega8? Не знаю какие команды отвечают за эти свойства...подскажите... Скролл в ZedGraph - Какие свойства отвечают за прокрутку поля Искать еще темы с ответами Или воспользуйтесь поиском по форуму:
|
|
Новые блоги и статьи
![]() |
||||
Результаты исследования от команды MCM (март 2025 г.)
Programma_Boinc 07.04.2025
Результаты исследования от команды MCM (март 2025 г. )
В рамках наших текущих исследований мы продолжаем изучать гены, которые имеют наибольшую вероятность развития рака легких, выявленные в рамках. . .
|
Рекурсивные типы в Python
py-thonny 07.04.2025
Рекурсивные типы - это типы данных, которые определяются через самих себя или в сочетании с другими типами, которые в свою очередь ссылаются на исходный тип. В мире программирования такие структуры. . .
|
C++26: Объединение и конкатенация последовательностей и диапазонов в std::ranges
NullReferenced 07.04.2025
Работа с последовательностями данных – одна из фундаментальных задач, с которой сталкивается каждый разработчик. C++ прошел длинный путь в эволюции средств для манипуляции коллекциями – от. . .
|
Обмен данными в микросервисной архитектуре
ArchitectMsa 06.04.2025
Когда разработчики начинают погружаться в мир микросервисов, они часто сталкиваются с парадоксальным правилом: "два сервиса не должны делить один источник данных". Эта мантра звучит повсюду в. . .
|
PostgreSQL в Kubernetes: Автоматизация обслуживания с CNPG
Mr. Docker 06.04.2025
Администраторы баз данных сталкиваются с целым рядом проблем при обслуживании PostgreSQL в Kubernetes: как обеспечить правильную репликацию данных, как настроить автоматическое переключение при. . .
|
Async/await в TypeScript
run.dev 06.04.2025
Асинхронное программирование — это подход к разработке программного обеспечения, при котором операции выполняются независимо друг от друга. В отличие от синхронного выполнения, где каждая последующая. . .
|
Многопоточность в C#: Синхронизация потоков
UnmanagedCoder 06.04.2025
Многопоточное программирование стало неотъемлемой частью разработки современных приложений на C#. С появлением многоядерных процессоров возможность выполнять несколько задач параллельно значительно. . .
|
TypeScript: Классы и конструкторы
run.dev 06.04.2025
TypeScript, как статически типизированный язык, построенный на основе JavaScript, привнес в веб-разработку новый уровень надежности и структурированности кода. Одним из важнейших элементов этой. . .
|
Многопоточное программирование: Rust против C++
golander 06.04.2025
C++ существует уже несколько десятилетий и его поддержка параллелизма постепенно наращивалась со временем. Начиная с C++11, язык получил стандартную библиотеку для работы с потоками, а в последующих. . .
|
std::vector в C++: от основ к оптимизации производительности
NullReferenced 05.04.2025
Для многих программистов знакомство с std::vector происходит на ранних этапах изучения языка, но между базовым пониманием и подлинным мастерством лежит огромная дистанция. Контейнер std::vector. . .
|