воскресенье, 25 декабря 2011 г.

Поздравление с Новым 2012 годом в стиле Brainfuck

Захотелось поздравить читателей блога да и себя тоже с Новым годом. Но не просто так, а написав поздравление на Brainfuck.

Первое поздравление выводит сообщение в виде ASCII-Art. Надеюсь, что получилось что-то отдаленно, напоминающее программу на brainfuck. Скриншот показывает что из этого получилось.


среда, 23 ноября 2011 г.

Ана́логовый компьютер — аналоговая вычислительная машина (АВМ), которая представляет числовые данные при помощи аналоговых физических переменных (скорость, длина, напряжение, ток, давление), в чём и состоит его главное отличие от цифрового компьютера.

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

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

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

В связи с объемностью материала, который хотелось бы представить, я планирую написать цикл статей. Предлагаю на суд читателя первую часть, где будет кратко рассказана история создания операционного усилителя в том виде, как мы его знаем.

среда, 9 ноября 2011 г.

К эксперименту, представленному ниже, меня подвиг данный комментарий. Если быть точным, то вот эта картинка. На картинке размещена фотожаба с запущенной Windows 31 внутри Windows XP которая в свою очередь запущена внутри Windows 7. Так вот там изображен фейк. Почему фейк? А вы попробуйте запустить Microsoft Virtual PC в XP Mode. Да и скриншот представленного Windows NT 3.1 в сети находится за один запрос в любом поисковике.

Поэтому я решил переплюнуть этот фейк. В результате у меня будет Windows 3.11 inside Windows 98 inside Windows XP inside Windows 7.

суббота, 10 сентября 2011 г.

Создаем эзотерический язык программирования за 5 минут.

Изучая вики по эзотерическим языкам я наткнулся на интересный язык программирования Piet. Отличительной особенностью которого является графическое представление программы. Например, эта программа выводит "Hello World!"
image
И показалось мне, что данная программа похожа на QR-Code.
  image
Только Piet использует цветовую кодировку. А QR-Code использует комбинацию расположения точек.

понедельник, 29 августа 2011 г.

Ошибка windows

При установке драйвера на одном из компьютеров с XP встретился с такой ошибкой:
"Windows не удается загрузить программу для установки hdc."

Для ее решения надо из дистрибутива или из интернетов в папку \windows\system32\ поместить файл sfcfiles.dll

суббота, 2 июля 2011 г.

Об особенности работы интерпретатора cmd

В процессе обработки пакетного файла интерпретатор cmd читает строку с командой необходимую выполнить, выполняет ее и потом читает следующую строку. При это постоянно происходит открытие и закрытие исполняемого командного файла.
Данная особенность позволяет делать самомодифицирующиеся батники. Небольшой пример.
@echo off
set a=
:m1
if "%a%"=="exit " goto :eof
echo echo executing adding code >>%0
echo set a=exit >>%0
echo goto :m1 >>%0
rem здесь будут добавлены новые команды.


пятница, 1 июля 2011 г.

Об оптимизации скорости работы bat-файлов

В ходе работы над интерпретатором Brainfuck было замечено постоянное порождение дочерних процессов командного процессора cmd. Да и общая скорость работы небольшая. Все дело в вызове функции call.

среда, 29 июня 2011 г.

Интерпретатор Brainfuck на BAT

Простота языка Brainfuck порождает множество реализаций его исполнения http://rosettacode.org/wiki/Execute_Brain****.  Есть вариант на Bash и даже на самом Brainfuck. Мне показалось, что несправедливо обойти еще один командный процессор. А именно командные файлы семейства WindowsNT, они же батники. При написании данного интерпретатора была поставлена цель реализовать всё только на встроенном «языке» консоли.