Программа - вариант реализации алгоритма для обработки данных.
Программу тоже можно рассматривать как данные и производить с ней манипуляции. Например, если рассматривать программу как текст то её можно модифицировать в другой программе. А программу, уже загруженную в оперативную память можно рассматривать как последовательность байт, которые можно модифицировать.
P.S. Компиляторы и парсеры делают не сильно сложную работу. Они рассматривают поток текста как некие синтаксические сущности и на их основе создают понятные для компьютера вычислимые сущности. Тот код, который ты пишешь - просто текст. А вся магия в метаописании сущностей.
Жители 1 планеты: 256=2^8. Один знак - 8 бит
жители 2: 128=2^7. Один знак - 7 бит
Отв: 10*8 бит = 80 бит , 10*7=70 бит. для жителей 1 планеты сообщение из 10 знаков несет больше инфы.
на сколько? 80-70=10 бит
лал