На каком этапе программное обеспечение преобразуется в реальные аппаратные сигналы? - PullRequest
0 голосов
/ 17 марта 2012

Что происходит с программой после машинного кода состояния?Ассемблер / компилятор преобразует код высокого уровня или код сборки в машинные инструкции.На этом этапе машинные инструкции все еще находятся в форме программного обеспечения и хранятся в памяти.Как этот код преобразуется в физические электрические сигналы, которые затем могут быть обработаны аппаратными средствами?Если есть какое-то интерфейсное устройство, хотелось бы узнать, как оно выполняет преобразование.

Ответы [ 4 ]

5 голосов
/ 18 марта 2012

С того момента, как ваши мышцы и пальцы касаются клавиш на клавиатуре, исходный код превращается в электрические сигналы. это продолжается путем компиляции и выполнения. Есть книга Петцольда под названием «Код», вам может быть интересно.

4 голосов
/ 17 марта 2012

Память физическая. Запоминающее устройство запрашивает процессор для следующей инструкции. В ответ на установку процессором высокого или низкого напряжения на 32 фактических проводах, которые выбирают адрес ячейки памяти. Память предназначена для обеспечения высокого или низкого напряжения через набор из 32 проводов. Эти провода называются шиной данных и направляются обратно в процессор, где состояния высокого или низкого напряжения дискретизируются и помещаются в меньшую память, называемую кешем команд. Значения, считанные из памяти, являются физическим представлением математического представления, которое мы называем машинным кодом.

С этого момента обработка продолжается в форме цифровой логики. Хотя это может быть выражено в виде математики или символов, фактическое физическое проявление - это логические схемы, которые воспринимают входные сигналы как высокое или низкое напряжение и реагируют на другие части цепи с высоким или низким напряжением. Время контролируется путем генерации некоторых из этих сигналов на высоком или низком уровне с очень регулярным интервалом времени.

2 голосов
/ 04 ноября 2012

Двельч прав.В тот момент, когда вы касаетесь клавиатуры (или мыши или сенсорного экрана).Программное обеспечение внутри компьютера - это не что иное, как хранение напряжений за счет использования защелок / триггеров (транзисторных схем).Когда вы вводите код с клавиатуры (язык высокого уровня, такой как C, или язык низкого уровня, такой как ассемблер, не имеет значения), он вводится как электрические сигналы (напряжения).Тем не менее, то, что вы видите на своем мониторе, представляет собой напряжение на английском или английском языке, как текст (в настоящее время на всех языках мира).

Дело в том, что текст не преобразуется в электрические сигналы.Программное обеспечение уже в той форме (напряжения), а не наоборот.

2 голосов
/ 17 марта 2012

Нет момента, когда программные инструкции преобразуются в аппаратные инструкции.Даже процесс преобразования кода на языке программирования высокого уровня в язык программирования низкого уровня выполняется аппаратными средствами, расположенными ниже.

Он ничем не отличается от запроса компьютера на выполнение сгенерированного машинного кода, поскольку этокомпьютер делает: выполнение машинного кода.Когда двоичный исполняемый файл создан, компьютеру просто нужно знать, где он находится в памяти, и он может начать его выполнение.

...