Лучшее Quora: Как компьютер превращает электричество в выполнение программ

Еженедельный обзор лучших обсуждений на Quorа, временно переформатированный на прошлой неделе в дайджест «Ответов@Mail.ru», возвращается. Но как прежде всё уже не будет. От больших статей с разбором нескольких тредов мы переходим на новую концепцию «один материал — одна тема». Начнём с вопроса о том, как электричество в компьютерах преобразуется в выполнение программ.

Для подавляющего большинства пользователей то, как электрический ток из розетки превращается в компьютере или ноутбуке в реальные вычислительные действия, остаётся большой загадкой. Конечно, для того, чтобы пользоваться той или иной техникой, совершенно не обязательно знать, как она устроена.

Но что если разобраться с чудесным преобразованием всё-таки хочется? Выпускник технологического института в Джорджии Субходжит Чаттопадай (Shubhojit Chattopadhyay), успевший поработать в Oracle, Intel и Qualcomm, попытался объяснить всё «на пальцах».

Материя состоит из атомов, каждый из которых обладает определённым количеством электронов. Во Вселенной существует ещё множество элементарых частиц, но для того, чтобы понять работу компьютера, знаний об атомах и обращающихся вокруг их ядра электронов вполне достаточно, уточняет пользователь Quora.

Электроны являются носителями того, что называется электричеством. Чтобы использовать их, человечество научилось делать транзисторы, способные хранить или, наоборот, высвобождать электричество тогда, когда это необходимо.

Именно с их помощью «кодируются» базовые логические единицы 1 и 0. Например, у микроконтроллеров, предназначенных для управления электронными устройствами, логические уровни для единицы и нуля, например, могут быть пять и ноль вольт соответственно.

Соединив вместе восемь таких транзисторов и поставив первые шесть из них в положение нуля, а последние два в положение единицы, можно закодировать, к примеру, число 3 (в двоичной системе счисления оно запишется как 0000 0011). По числу задействованных транзисторов такая «запись» называется 8-битной.

Из 8 бит состоит одна ячейка памяти комьютера (хотя её длина может быть и 16, и 32, и 64 бита). Совокупность множества блоков, состоящих из ячеек памяти, в итоге образует процессор и оперативную память компьютера.

Процессор (непосредственное переключение транзисторов в ячейках в положение ноль или один) управляется машинным кодом. Для удобства работы с ним был разработан так называемый язык ассемблера — машинно-ориентированный язык низкого уровня, благодаря которому машинный код представляется в удобночитаемом виде.

Так как язык ассемблера также довольно труден для восприятия человеком, для упрощения работы с ним были разработаны языки высокого уровня (С, C++ и другие). Любая программа, написанная на них, всё равно в итоге конвертируется в язык ассемблера, который в реальности и управляет переключением транзисторов в процессоре.

Все комьютерные программы таким образом (от браузеров до тех, что управляют действиями мыши) в целом действуют по одной и той же схеме: преобразуют действия пользователя в конкретные команды на С/С++, которые затем обрабатываются до уровня машинного кода и приводят к действию внутри процессора, то есть фактическому изменению вольт в транзисторах. Так электричество превращается в выполнение программ.

Как отмечает Субходжит Чаттопадай, описанная им система представляет собой очень сильно упрощённую модель, предназначенную в первую очередь для общего понимания.

Хочу заметить, что я «отупил» всё это до самого примитивного уровня. На самом деле я не коснулся в своём ответе и одного процента всех деталей. [...] Но в целом всё так. Это именно то, что вы увидите, когда посмотрите на устройство компьютера со стороны.

Субходжит Чаттопадай, пользователь Quora

Сами компьютеры автор комментария называет настоящим чудом, на создание которого ушло больше 50 лет и силы миллионов умных людей.

#Статья #Quora #лучшие_обсуждения_на_Quora #лучшее_на_Quora #как_работает_компьютер #электричество

{ "author_name": "Виктор Степанов", "author_type": "self", "tags": ["\u044d\u043b\u0435\u043a\u0442\u0440\u0438\u0447\u0435\u0441\u0442\u0432\u043e","\u0441\u0442\u0430\u0442\u044c\u044f","\u043b\u0443\u0447\u0448\u0438\u0435_\u043e\u0431\u0441\u0443\u0436\u0434\u0435\u043d\u0438\u044f_\u043d\u0430_quora","\u043b\u0443\u0447\u0448\u0435\u0435_\u043d\u0430_quora","\u043a\u0430\u043a_\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442_\u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440","quora"], "comments": 17, "likes": 13, "favorites": 4, "is_advertisement": false, "subsite_label": "flood", "id": 53584, "is_wide": true, "is_ugc": true, "date": "Mon, 29 Dec 2014 10:13:44 +0300" }
Комментарии

Пыльный кот

8

Shubhojit Chattopadhyay - чётко же написано Шубходжит Чаттопдхьяй.
Только не надо мне про Ctrl+Enter говорить, я нажимал.
Зачем ТАК торопиться?
вычислетильные
что[,] если
их ядра - ядер!
равны пять и ноль вольт - пяти и нулю вольтам
комьютера
удобночитаемом - удобочитаемом
комьютерные

Дорогой кубок

6

Есть такая замечательная книга Code от Charlez Petzold, которая читается легко как на русском так и на английском:
«Эта книга — азбука компьютерных технологий. Шаг за шагом автор знакомит читателя с сущностью кодирования информации, рассказывает об истории возникновения компьютеров, на практических примерах помогает освоить основные концепции информационных технологий, подробно излагает принципы работы процессора и других устройств компьютера».

http://www.ozon.ru/context/detail/id/125884/ - там же и отзывы можно прочитать
http://www.amazon.com/Code-Language-Computer-Hardware-Software/dp/0735611319/

Поздний парфюмер

7

Степанов, верни Mail.ru!

Офтоп
дискуссии в сообществе доступны только владельцам клубного аккаунта
С клубным аккаунтом вы сможете
создавать записи и вести дискуссии в закрытых сообществах
наслаждаться нашим сайтом без рекламы
помочь проекту и почувствовать себя лучше
Купить за 75₽

Прямой эфир

[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox_method": "createAdaptive", "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "i", "ps": "cndo", "p2": "fizc" } } }, { "id": 4, "label": "240х200_mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "i", "ps": "cndo", "p2": "flbq" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "ezfk" } } }, { "id": 6, "disable": true, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byswn", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "fjog" } } }, { "id": 10, "disable": true, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "disable": true, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "createAdaptive", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "cndo", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-223677-0", "render_to": "inpage_VI-223677-0-130073047", "adfox_url": "//ads.adfox.ru/228129/getCode?pp=h&ps=cndo&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid10=&puid21=&puid22=&puid31=&puid32=&puid33=&fmt=1&dl={REFERER}&pr=" } }, { "id": 15, "label": "Плашка на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byudv", "p2": "ftjf" } } }, { "id": 16, "label": "Кнопка в шапке мобайл", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "ccydt", "p2": "ftwx" } } }, { "id": 17, "label": "Stratum Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "fzvb" } } }, { "id": 18, "label": "Stratum Mobile", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "fzvc" } } } ]
Действительно важные push-уведомления
Подписаться на push-уведомления