Ошибки вызваны многобайтовыми символами, Gnu (и я считаю, что все современные Unix) использует utf-8.
Следовательно,
dc эквивалентно
dc . Первый байт ¢ и ¥ одинаковы и используется как адрес регистра. Второй байт вызывает ошибку.
см. Вывод od
#↳ od -ta -to1 <<< "5 6+s¢l¥p"
0000000 5 sp 6 + s B " l B % p nl
065 040 066 053 163 302 242 154 302 245 160 012
Следовательно, ошибка действительна, и ее не следует игнорировать.
Попробуйте этот тестовый пример, dc какой результат вы ожидаете? (
dc
предупреждает о проблеме.) Какой вывод он выдает?
dc
не поддерживает UTF-8, он работает с байтами. Utf-8 почти, но не совсем совместим с 8-битными (например, ascii) кодировками.
см .: https://www.youtube.com/watch?v=MijmeoH9LT4 (компьютерфил на utf-8).