![]() |
|
![]() ![]() ![]() |
|
Compositum |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 430 Регистрация: 6.1.2008 Где: Санкт-Петербург Репутация: нет Всего: 1 |
Доброго времени суток.
Разбираюсь, каким образом процессор определяет наличие оборудования. В качестве примера беру такую материнскую плату (признаюсь честно - выбрал свою модель ![]() ![]() На материнской плате присутствует множество различных слотов, а так же вот такая гроздь радостей: ![]() Дополнительная информация об указанной мною материнской плате здесь, а более подробные фотографии здесь (если эта информация потребуется). В свете того, что я прочитал в книгах, у меня сложилось некоторое "понимание" по указанному вопросу. Однако я не уверен, что это самое "понимание" верно и прошу меня поправить там где я ошибся. ![]() Суть "понимания" такова, что любая материнская плата покрыта паутиной проводов, подобно кровеносной системе. Вся эта кровеносная система тянется к процессору от слотов, внешних портов (USB2, PS/2 и т.д.) размещённых на материнской плате и именуется "системной шиной". Слоты и порты стыкуются с материнской платой так же посредством своих "шин" (что создаёт некоторую путаницу в системе наименований). Тут где-то должны фигурировать некие "контроллеры", но я пока не понял их места в обозначенной мною схеме. :( Процессор имеет множество "лапок". Доступное адресное пространство процессора равно двум, возведённым в степень, равную количеству "лапок". Т.о. адресное пространство включает в себя и оперативную память и адреса всех слотов/портов, имеющихся на плате. Я так понял, что существует некий СТАНДАРТ, которому следуют все производители материнских плат. Суть этого стандарта заключается в том, что в любом процессоре по зараннее известным адресам (однозначно определённым в стандарте) хранится информация о том, какой адрес имеет каждый слот и каждый порт, размещённые на этой плате. Для того, чтобы отправить байты в порт/слот, следует: 1. Получить адрес этого порта/слота (из ячейки памяти, определённой стандартом для порта/слота этого типа). 2. В ячейки этого адреса поместить байты, которые нужно передать. 3. Вызвать нужную команду ассемблера, которая отправит эти байты на этот порт/слот, обнулив содержимое указанных в п.2 ячеек памяти. Для того, чтобы прочитать байты из порта/слота следует: 1. Получить адрес этого порта/слота (из ячейки памяти, определённой стандартом для порта/слота этого типа). 2. Из ячеек этого адреса прочитать байты, которые появились в этих ячейках. Это подобно тому, как работают с видеосистемой в DOS - чтобы вывести символ на экран, его нужно поместить в определённую ячейку памяти. Если на материнской плате отсутствует порт/слот, то ячейки памяти, в которых должен размещаться адрес этого порта/слота, в качестве значения будут размещаться нули... Прошу поправить меня, если я что-то напутал. Фотографии платы показываю для того, чтобы в замечаниях к моему текущему "восприятию" можно было указать физические аспекты взаимодействия компонентов материнской платы. Спасибо |
|||
|
||||
500mhz |
|
|||
![]() шайтан ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1017 Регистрация: 5.5.2008 Где: Киев / Italy Репутация: 1 Всего: 14 |
процессор сам ниче не определяет, биос определяет.
-------------------- |
|||
|
||||
LeonidPr |
|
||||
Бывалый ![]() Профиль Группа: Участник Сообщений: 220 Регистрация: 17.2.2012 Где: г. Чебоксары Репутация: нет Всего: 1 |
Схема из Википедии Еще попробуйте почитать например Э. Таненбаума "Архитектура компьютера" там найдете и про контроллеры и про многое другое. Еще предлагаю здесь поковыряться, есть интересные статьи.
Добавлю, что процессору вообще ничего не надо. Он просто выполняет программу. А вот программа уже может что-то определять с какой-то своей целью. При старте компьютера такой программой является BIOS, её задача проинициализировать устройства, расположенные на материнской плате и запустить первичный загрузчик ОС. Еще скажу, что определение, идентификация и инициализация каждого устройства - отдельная, зачастую, довольно сложная задача. Так что читайте литературу, если уж этот вопрос вас интересует, и задавайте конкретные вопросы. --------------------
pkunzip.zip |
||||
|
|||||
LariKing |
|
|||
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 15.3.2020 Репутация: нет Всего: нет |
да уж круто
Добавлено через 23 секунды Я искал надежное сварочное оборудование для нашей компании и нашел подходящий вариант на сайте https://dn.ru/ . Оборудование было современным и имело широкий диапазон возможностей. Я связался с менеджером и получил подробную консультацию по характеристикам и доставке. Заказ был оформлен быстро и без проблем. Оборудование было доставлено вовремя и установлено на производстве в течение нескольких дней. Мы сразу начали использовать его и были удивлены его высокой производительностью и надежностью. Новое оборудование значительно улучшило качество сварочных работ и повысило производительность нашей компании. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Asm для начинающих" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Asm для начинающих | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |