Трансляция программы — преобразование программы, представленной на одном из языков программирования, в программу на другом языке и, в определённом смысле, равносильную первой.
Язык, на котором представлена входная программа, называется исходным языком, а сама программа — исходным кодом. Выходной язык называется целевым языком или объектным кодом.
Здесь можете бесплатно скачать трансляторы.
Исходники трансляторов
Здесь размещены исходники программ, переводящих текст с одного языка на другой (Например, из Бэйсика в Паскаль). Так как такие программы не являются компиляторами в полном смысле, они были вынесены в особый раздел.
bas_pas.zip (~20kb) Cross system Basic-Pascal (c) 1997 by Unknown Russian Programmer
Транслирует GW-Basic-образный текст (то есть с номерами строк) в Паскаль. Без документации, но с небольшими комментариями в исходнике. Автор: не установлен
Язык исходника: .pas (Borland Pascal)
Выходной язык: .pas (Borland Pascal)
Документация: нет, комментарии на русском
baspas.zip (~320kb) Basic to Free Pascal Translator v0.602 (c) 2003 by Andrea Tobian-Mezger
Переводит один из диалектов Бэйсика в Паскаль. Полученный текст, по идее, можно компилировать любым Борланд-совместимым Паскалём.
Автор: Андреа Тобиан-Мецгер
Язык исходника: .pas (Free Pascal, Dev-Pascal)
Выходной язык: .pas (Free Pascal)
Документация: на английском
bascy10d.zip (~163kb) Basic to C Translator (c) 2001 by S. Narasimhan
Это транслятор из QuickBasic’а в Си, сделанный неким индийским программистом из ностальгических чувств. В комплекте документация и штук тридцать тестовых Бэйсиковских текстов.
Язык исходника: .c (Borland C)
Выходной язык: .c (ANSI C)
Документация: на английском
nega.zip (~81kb) The NEGA Programming Language (c) 1997 Tylisha C. Andersen
Символьный высокоуровневый ассемблер с очень необычным синтаксисом. Тем не менее, все управляющие структуры поддерживаются. Nega очень похож на BAssPasC и стоит ближе именно к ассемблеру, в отличие от Sphinx C--. Выходным форматом является листинг для Tasm, поэтому возможности языка ограничены именно им. Также поддерживаются операции с плавающей точкой. В качестве примера – игрушка Tetris для текстового режима.
Язык исходника: .c (Borland C, Watcom C)
Выходной язык: .asm (Tasm, Masm)
Документация: на английском
qb2c.zip (~193kb) QuickBASIC to ANSI C translator (c) 1998 by Mario Stipcević
Транслирует исходники Бэйсика в Си; полученный файл можно опять компилить и запускать в Unix’е; для вывода графики используется библиотека X11. Как насчёт других ОС – не знаю.
Автор: Марио Стипцевич (Стипчевич? или ещё как-нибудь? пардон, если переврал фамилию, но диакритические значки над буквами не были проставлены)
Язык исходника: .c (GNU C)
Выходной язык: .c (ANSI C)
Документация: на английском
qbcc01.zip (~2.6Mb) Quick Basic Compatible Compiler v0.01a (c) 2000 by Jason Boettcher and Martyn McDonnell
Переводит QuickBasic в C. Полученный исходник можно скомпилировать даже для Win32, для графического вывода используется Allegro. Количество поддерживаемых функций не слишком велико, так как это всего лишь альфа. Транслятор написан с использованием Flex’а, исходники библиотек также прилагаются.
Авторы: Джэйсон Бёттхер и Мартин МакДоннелл
Язык исходника: .c (GNU C, MS Visual C)
Выходной язык: .c (GNU C, MS Visual C)
Документация: комментарии на английском
Домашний сайт: http://qbcc.sourceforge.net/
ptoc355.zip (~644kb) Ansi/Turbo Pascal to C/C++ Converter v3.55 (c) 1998-2004 by Konstantin Knizhnik
Понимает несколько диалектов Паскаля, в том числе и Turbo Pascal 4.0/5.0. Может выдавать текст как на Си, так и на C++ (в этом случае строки и типизированные файлы реализуются через объекты). При разработке были использованы Flex и Bison. Для вывода BGI графики для Win32 используется специальная эмулирующая библиотека (исходники прилагаются). Имеются примеры.
Автор: Константин Книжник
Язык исходника: .c (MS VC++ 4.0, Borland C++ 5.5)
Выходной язык: .c, cpp (MS VC++, BC++)
Документация: на английском
Домашний сайт: http://www.garret.ru/~knizhnik/
pxsc350s.zip (~1.9Mb) Pascal-XSC to C Compiler v3.50 (c) 1994 by Numerik Software GmbH
Переводит разновидность Паскаля в Си. Должен быть довольно качественным, так как разрабатывался в каком-то немецком университете. Кажется, этот компайлер заточен для эффективной компиляции математических выражений. В архиве также исходники некоторых утилит и всех нужных библиотек. Внимание! Скомпилированные бинарники не включены, чтобы не утяжелять и без того порядочный архив, но мною точно проверено, что всё отсюда компилится без проблем в GNU C и его портах. Иначе: смотри сайт производителя.
Язык исходника: .c (GNU C)
Выходной язык: .c (GNU C)
Документация: на немецком
Домашний сайт: http://www.uni-karlsruhe.de/~iam/html/pascal/pascal-xsc/download.html
ta2asv08.zip (~27kb) TASM to AT&T v0.8 (c) 1994 by Frank van Dijk
Эта утилита переводит асмовый листинг с синтаксисом TASM в соответствующий текст с синтаксисом AT&T.
Автор: Фрэнк ван Дайк
Язык исходника: .c (GNU C)
Выходной язык: .asm (AT&T syntax)
Документация: комментарии на английском
tptoc.zip (~131kb) Turbo Pascal to C Translator v1.7 (c) 1986-1988 by Samuel H. Smith
Довольно старый транслятор из Турбо Паскаля 4.0 в Си. Прилагается куча тестов и примеров.
Автор: Сэмюэл Смит
Язык исходника: .pas (Turbo Pascal 4.0)
Выходной язык: .c (Turbo C)
Документация: на английском
xlt86.zip (~18.5kb) i8080 to i8086 (c) 1984 by Frank J. Zerilli, ms-dos port by Craig Derouen
Переводит ассемблерный текст процессора Intel 8080 в ассемблерный текст Intel 8086.
Автор: Фрэнк Церилли; ms-dos адаптация: Крэйг Дёруан
Язык исходника: .asm (Tasm)
Выходной язык: .asm (i8086)
Документация: комментарии на английском