Comments 11
Прочитай число (инструкцию или данные) из памяти или кэша.
С инструкцией понятно, а что процессор делает с прочитанными данными далее по циклу?
Цикл «Выборка-Декодирование-Исполнение»
Какой-то непрерывный цикл получился. Как тогда на ввод данные подать?
Идея "объяснить на пальцах" хорошая, но слишком много всего и поверхностно, и не линейно - винегрет получился какой-то. Хочется увидеть это в последовательном логическом порядке.
Ещё бы определиться с ЦА. Это программисты? Студенты? Люди не знакомые с устройством ПК?
Кстати, статья не имеет отношения к хабу Java (а, возможно, и к остальным).
Кстати, статья не имеет отношения к хабу Java (а, возможно, и к остальным).
Да ну почему, имеет. Но про JIT автор забыл, да)
И ЦА не хабра, конечно...
Для кого это: Статья адресована тем, кто пишет, а в иделе кто начинает писать код и иногда думает: «Как эта штука вообще работает?» Не академикам, не спецам с большим бекграудом (я и предполагал, что такие и не поинтересуются данной статьёй).
Про Java и хабы: Статья не про Java конкретно. Она про принцип, как любой высокоуровневый код превращается в машинные команды. Java, Python, 1C - просто примеры. Суть одна: везде между вашим кодом и железом стоят посредники (JVM, интерпретатор, платформа).
Про «винегрет» и структуру: да, это не диссертация по Computer Science. Так и было задумано - в статье с первых строк сказано: «без хардкора, с понятными аналогиями». Если хочется строгой линейности - учебники и спецификации всегда под рукой. А здесь была задача связать в голове «мой красивый код» и «тупое, но быстрое железо» - без скучных переходов.
Но всё равно спасибо за комментарий))
Третье, промежуточное состояние («полувключён») было бы неустойчивым, шумным и медленным
Что-то вспомнил про ssd qlc, где аж 16 состояний в ячейке... )
Режим зануды: судя по картинке со Спанч бобом, Java более низкоуровневый, чем Go?)
Как будто бы нейровысер.
Очередной ии слоп.
Как компьютер понимает Языки программирования: история о том, как ваш код превращается в нули и единицы