Информация об изменениях

Сообщение Re[2]: [modif] Чего нет в С для работы с железом? от 01.05.2023 8:16

Изменено 01.05.2023 8:24 Shmj

Re[2]: [modif] Чего нет в С для работы с железом?
Здравствуйте, vsb, Вы писали:

vsb>В С вообще нет ничего для работы с железом. Я не знаю, почему ты думаешь, что в С можно работать с памятью. В общем случае нельзя. Если и получается, то это особенность компилятора (то бишь это уже не совсем C и не переносимо, впрочем это и очевидно).


Вот этот момент мне и не ясен — кто и почему решил, что адрес 0xb8000 — это именно видеопамять при начальной загрузке (в режиме VGA или как там)? Наверное даже не компилятор а BIOS-система это определяет, скорее всего. Или нет...

Вот если без BIOS загрузиться — как обратиться к девайсам?

vsb>Что такое порты, я не знаю.


Порт — это и есть та самая ножка микроконтроллера, к которой ты припаиваешь светодиод. Ну да, обычно оно тоже как-то мапится на память.
Re[2]: [modif] Чего нет в С для работы с железом?
Здравствуйте, vsb, Вы писали:

vsb>В С вообще нет ничего для работы с железом. Я не знаю, почему ты думаешь, что в С можно работать с памятью. В общем случае нельзя. Если и получается, то это особенность компилятора (то бишь это уже не совсем C и не переносимо, впрочем это и очевидно).


Вот этот момент мне и не ясен — кто и почему решил, что адрес 0xb8000 — это именно видеопамять при начальной загрузке (в режиме VGA или как там)? Наверное даже не компилятор а BIOS-система это определяет, скорее всего. Или нет...

Вот если без BIOS загрузиться — как обратиться к девайсам?

vsb>Что такое порты, я не знаю.


Порт — это и есть та самая ножка микроконтроллера, к которой ты припаиваешь светодиод. Ну да, обычно оно тоже как-то мапится на память.

И тоже тут вопрос — на каком уровне оно мапится на память? На уровне компилятора или девайса?