Да, я так и думал, конечно только для нативных. Вообще любые операции со строками можно сделать нативными (как например в бейсике), (то есть даже обращение к букве в строке может выглядеть вот так str1 = mid(str2,7)) и нефиг буквы преобразовывать в цифры (опять же кроме нативных itoa(), atoi() или val(), hex() итп)
В архиве исходники. Компилируются GCC. Под Linux использовал 4.3.4, под Windows 4.4.0 из MinGW. На всякий случай в архиве экзешник под Windows и либа которую он тянет (libgcc_s_dw2-1.dll). ВНИМАНИЕ: возможна зараза! За компьютер на котором компилировался Windows-экзешник поручится не могу. Проверяйте антивирусом, либо компилируйте сами
Начал писать виртуальную машину и понял, что забыл : в бинарном файле должна содержаться информация о размерах строк и массивов, если хотим сделать контроль границ
Машина заработала, пока еще не все операции протестировал. F23 по классическому рекурсивному алгоритму считает за 10,85 с при тактовой частоте 11,0592 МГц.
Ну смотря с чем сравнивать. На С аналогичный код отрабатывает за 233 мс, то есть почти в 47 раз быстрее. Оптимизировать есть что, так что быстродействие можно будет заметно поднять. Для сравнения: JVM на пропеллере считает F23 за 3.273 с, SPIN ("родной" ЯВУ для пропеллера, выполняется на виртуальной машине) - за 2.4 с. Это 32-разрядный процессор при тактовой частоте 80 МГц. http://forums.parallax.com/forums/defau ... 5&m=328004