惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Apple Machine Learning Research
Apple Machine Learning Research
爱范儿
爱范儿
博客园_首页
博客园 - 【当耐特】
V
Visual Studio Blog
博客园 - 叶小钗
月光博客
月光博客
美团技术团队
J
Java Code Geeks
小众软件
小众软件
Y
Y Combinator Blog
博客园 - Franky
Martin Fowler
Martin Fowler
博客园 - 聂微东
Microsoft Azure Blog
Microsoft Azure Blog
IT之家
IT之家
MyScale Blog
MyScale Blog
人人都是产品经理
人人都是产品经理
Microsoft Security Blog
Microsoft Security Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
阮一峰的网络日志
阮一峰的网络日志
酷 壳 – CoolShell
酷 壳 – CoolShell
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
云风的 BLOG
云风的 BLOG

Все публикации подряд на Хабре

Ловим музу за клавиатуру: как айтишнику стать автором Что умеет Midjourney в 2026? Мой немного грустный разбор этого шикарного инструмента Никто не любит писать тесты, но ИИ может исправить это IPv8 выглядит как мечта. Поэтому почти наверняка не взлетит Производители вернули в продажу материнки с DDR3. Что происходит? Управление агентом с телефона через Telegram теперь в KodaCode От координации к лидерству: как меняется роль руководителя разработки Я сделала родителям бизнес вместо пенсии: зарабатываем 70 тысяч, мама не даёт продать В три раза быстрее приемка товара и оптимизация трудозатрат на 73%: как «РСТ-Инвент» помог Gulliver Group ИИ-шечный мир победил? О влиянии искусственного интеллекта на игропром Кремль снижает давление на Телеграмм пока Европа строит интернет по паспорту Как CEO, CTO и CIO за 8 часов собрали ИИ-директора, который умеет держать позицию под давлением Как (не) потерять домен за выходные Вместо 8 разных VPS: как я организовал практику студентам на одном сервере Почему твой Open Source проект не замечают? R&D: искусство управления неопределенностью в разработке AI-дефляция: вакансий для разработчиков больше, а рост зарплат — худший за 15 лет Мы отдали управление роботами OpenClaw. Что из этого вышло Галактический ID: система идентификации для всех форм разумной жизни Шесть основ бизнес-анализа: начинаем с вопроса «Кто в игре?» Код-ревью, в котором дело не в коде Данные переехали. Команда — нет Системной подход к сдаче OSWE в 2025 Почему комната управления реактором покрашена в цвет морской пены 4 YAML-файла вместо PySpark: как аналитикам строить пайплайны без разработчиков LLM-агент для поиска свободных доменов: автоматизируем подбор Когда, зачем и как правильно начинать новую сессию в Claude Code? Как я заставил нейросеть писать макросы для FreeCAD Анатомия ИИ‑агента для подбора персонала. От тысячи резюме к топ‑10 за минуты Опыт разработчика как экономика внимания
Пишем логический калькулятор, лёжа на диване: как Termux ...
DataViz · 2026-04-25 · via Все публикации подряд на Хабре

Время на прочтение2 мин

Охват и читатели67

Туториал

Говорят, для программирования на Си нужен стол, стул, мощный ПК и Linux. У меня другой стек: диван, планшет на Андроиде и Termux. Но иногда мой монитор помещается в карман — это смартфон.

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

Противостояние против индустрии

Идея родилась внезапно. Захотелось проверить одну логическую схему, но вставать и идти к компьютеру было выше моих сил. Так началось моё «преступление» против канонов профессиональной разработки.

Инструментарий

Чтобы превратить диван в рабочее место, мне понадобился стандартный набор для Termux:

<cut />

  • Clang / Gcc — компилятор.

  • Vim — как основной текстовый редактор.

Эволюция проекта: от корня до смещения

Разработка шла итерациями. Каждая версия решала конкретную проблему интерфейса на маленьком экране. Получилось v0, v1, v2, v3, v4, v5. Пять версий.

v0: Скелет

Самый первый запуск. Проверка того, что среда настроена верно.

Скелет программы.

Скелет программы.

## v1: Базовая логика

Фундамент всей программы. Реализация базовой логики: И, ИЛИ, НЕ, >>, <<. Цветной вывод. Оптимизация.

Базовая логика

Базовая логика

v2: v3 Битва за горизонталь

Попытки сделать вывод данных в одну строку. На планшете это выглядело сносно, но на смартфоне экран быстро превратился в кашу.

V2 для смартфона 16 разрядов.

V2 версия для телефона.

V2 версия для телефона.

V3 для планшета 32 разряда

Для планшета

Для планшета

Вертикальный прорыв v4: v5

v4 :

Решил добавить Dec и hex. Десятичное и шестнадцатеричное представление двоичного числа. Если принтовать по горизонтали это 100% каша данных. Решил вывести по вертикали. Добавил выбор разрядности.

Выводим по вертикали

Выводим по вертикали

v5: Финальный штрих (Смещение)

В последней версии та же вертикаль. Добавил смещение разрядов.

По вертикали со смещением

По вертикали со смещением

Чтобы не превращать статью в листинг кода, я выложил все пять этапов эволюции в отдельный репозиторий.

[Ссылка на github] (https://github.com/Data7Viz/bit_log)

С ссылкой были вопросы поэтому дублирую

Ссылка на github

Заключение

Мобильная разработка на Си — это отличный способ держать мозг в тонусе. Когда у тебя нет под рукой IDE с автодополнением, начинаешь лучше помнить синтаксис и ценить каждый символ на экране.Этот проект был для меня интересным экспериментом — проверкой того, насколько далеко можно зайти в разработке, не вставая с дивана. Сейчас мой фокус сместился на другие задачи и более масштабные проекты, поэтому v5, скорее всего, останется финальной точкой в этой диванной истории. Но главный вывод сделан: инструмент (будь то мощный ПК или старенький планшет) — лишь средство, если есть желание что-то создать».