Информационная безопасностьНовости

WWW: Google Sheets VM — виртуальная машина внутри электронной таблицы

Я думаю, тебе хорошо известно о возможности выполнять скрипты в документах Microsoft Office и Google Drive. Но давай отвлечемся от злокозненных применений и посмотрим, как в электронных таблицах Google можно смастерить простейшую виртуальную машину, которая будет исполнять программы.
WWW: Google Sheets VM — виртуальная машина внутри электронной таблицы

Автор этого небольшого эксперимента, Брайан Стеффенс, опубликовал пост в своем блоге и привел исчерпывающую инструкцию.

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

WARNING

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

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

Когда программа будет готова, выбирай пункт Run, и увидишь, что в ячейке Output появился результат вычислений. Если захочешь что-нибудь написать самостоятельно, то для отладки пригодится пошаговое исполнение (Step), а если будет интересно, как все это работает, открывай Script editor и смотри. Скрипт несложный — чуть меньше 500 строк.