Pull to refresh
28
0
Send message

My4TH — домашний компьютер без процессора

Level of difficultyMedium
Reading time14 min
Views18K

Этот обзор посвящен открытому проекту компьютера My4TH по информации от разработчика: Авторский сайт проекта:

My4TH (произносится как "мой четвертый") - это четвертый домашний компьютер без процессора после MyCPU, MyNOR и TraNOR. Автор хотел и построил максимально простой компьютер с дискретным процессором, использующим как можно меньше элементов и компонентов, под управлением операционной системы Forth.

Смотреть обзор
Total votes 53: ↑52 and ↓1+66
Comments21

Контекстные исключения с метапрограммированием Forth

Reading time9 min
Views839

Эта статья является частью серии «Начальная загрузка» , в которой я начинаю с 512-байтного начального источника и пытаюсь загрузить реальную систему.

Читать далее
Total votes 7: ↑6 and ↓1+7
Comments0

Ветвления: сборка не требуется

Level of difficultyMedium
Reading time5 min
Views812

Эта статья является частью серии «Начальная загрузка» , в которой я начинаю с 512-байтного начального источника и пытаюсь загрузить реальную систему.

Читать далее
Total votes 4: ↑3 and ↓1+3
Comments3

Лёгкий Форт

Level of difficultyEasy
Reading time19 min
Views6.2K

Эта небольшая электронная книга предназначена для того, чтобы научить вас языку программирования под названием Forth. Форт — это язык, непохожий на большинство других. Он не функциональный и не объектно-ориентированный, в нем нет проверки типов и практически отсутствует синтаксис. Он был написан в 70-х годах, но до сих пор используется для некоторых приложений .

Зачем учить такой странный язык? Каждый новый язык программирования, который Вы изучаете, помогает Вам думать о проблемах по-новому. Форт очень прост в освоении, но он требует от Вас мыслить не так, как Вы привыкли. Это делает его идеальным языком для расширения ваших горизонтов кодирования.

Эта книга включает в себя простую реализацию Forth, которую я написал на JavaScript. Она ни в коем случае не совершенна, и ей не хватает многих функций, которые вы ожидаете от настоящей системы Forth. Это просто для того, чтобы дать вам простой способ опробовать примеры. (Если Вы эксперт по Forth, пожалуйста, поделитесь здесь и сделайте его лучше!)
...

Читать про язык Форт
Total votes 7: ↑5 and ↓2+4
Comments8

Нет ветвлений? Нет проблем — Форт-ассемблер

Level of difficultyMedium
Reading time23 min
Views3.2K

Эта статья является частью серии «Начальная загрузка» , в которой я начинаю с 512-байтного начального источника и пытаюсь загрузить реальную систему.

Читать далее
Total votes 10: ↑9 and ↓1+11
Comments5

Разместить FORTH в 512 байтах

Reading time25 min
Views6.3K

Оригинал текста Июнь 10, 2021 - 38 минут чтения

Программное обеспечение полно своих зависимостей, если смотреть достаточно глубоко. Компиляторы, написанные на языке, на котором они компилируются, - самый очевидный, но не единственный пример. Чтобы скомпилировать ядро, нам нужно работающее ядро. Линкеры, системы сборки, оболочки. Даже текстовые редакторы, если вы хотите писать код, а не просто загружать его. Как разорвать этот цикл?1 С тех пор как проблема начальной загрузки впервые привлекла мое внимание, я стал интересоваться этой уникальной областью программной инженерии. Не из страха, что кто-то попытается реализовать атаку на доверие, а просто как интересный вызов.

11 лет назад vanjos72 описал на Reddit то, что он называет мысленным экспериментом: что если бы вас заперли в комнате с IBM PC, на котором нет операционной системы? Какое минимальное количество программного обеспечения вам понадобилось бы для начала, чтобы вернуться к комфортной работе?

Так получилось, что в последнее время у меня появилось много свободного времени, поэтому я решил сделать это больше, чем просто мысленный эксперимент. Увы, мой компьютер не был оснащен переключателями на передней панели, поэтому некоторые программы должны уже присутствовать на компьютере ...

Самым минимальным вариантом может быть простая программа, которая принимает ввод с клавиатуры, а затем переходит на нее. Поскольку подпрограммы ввода с клавиатуры в BIOS реализуют escape-коды alt+numpad, вам даже не нужно писать код преобразования базы.2Более того, циклу даже не нужно условие завершения а просто пишите в буфер обратно, пока не столкнетесь с существующим кодом и не перезапишете точку перехода. Такой подход занимает всего 14 байт.

Путь в четвёртое.
Total votes 19: ↑19 and ↓0+19
Comments2

Information

Rating
Does not participate
Registered
Activity