Правильны ли понятия трансляции, компиляции и интерпретации в книгах Таненбаума?
Эти определения не играют роли, кроме случая, когда вы работаете над проектом, где разрабатывается компилятор, декомпилятор или какое-то иное средство, выполняющее аналогичные функции. Там это важно, потому что команда должна общаться на одном языке и называть одно и то же одинаково. 
Главное, чтобы вы понимали суть этих действий. В книге эти определения даны для "внутреннего" использования, то есть для того, чтобы вы понимали, о чем речь в этой книге.
В том смысле, как эти термины подразумеваются Танненбаумом, различие между трансляцией и компиляцией в том, что в первом случае происходит взаимно-однозначное (и потенциально обратимое) преобразование операторов входного языка (исходника) в команды исполнителя, а компиляция — более «творческий» процесс, когда одному оператору входного языка будет соответствовать произвольное (обычно довольно существенное) число команд исполнителя, однозначность возможна лишь на уровне блоков кода, а обратимость практически утеряна (однозначная декомпиляция невозможна).
На практике трансляторами являются различные ассемблеры, а компиляторами — генераторы машкода языков высокого уровня (ЯВУ). Это отражено в литературе: ассемблирование программ ассемблером называют трансляцией, а трансляцию (каламбур!) в машкод языков высокого уровня — компиляцией. Иногда говорят «трансляция с ЯВУ», подразумевая неоднозначность процесса явно.
Другое использование термина «трансляция» — в качестве объединяющего для компиляции и интерпретации. В этом случае речь идет только о языках высокого уровня, ассемблеры остаются за скобками.У себя на форуме я неправильно использовал эти терминыПосле углубленного изучения темы выяснилось, что процесс генерации обратимого кода для дальнейшего добавления в базу правильней называть трансляцией и установкой, а не компиляцией. В окончательном документе это будет учтено.