История изменений
Исправление Vic, (текущая версия) :
Даже если сам ассемблер написан на ФОРТРАНе ?
Так, конечно нет, ассмблер же не парсит язык и модель фортрана.
Но тогда возникают следующие вопросы:
- На чем изначально написан сам фортран, на котором написан ассемблер?
- Зачем на фортране написали ассемблер? Фортрана в чем-то не хватает (например, операционка не получается на чистом фортране без ассемблерных вставок)?
Просьба учесть, что мы ведем речь в контексте вот этого исходного сообщения (ссылка на сообщение), где на начальном этапе у нас есть только «машинные коды», и наша цель сделать компилятор, который будет и сам работать и код генерировать на том же целевом процессоре.
А что делать при смене процессора (процессор с новым набором команд), но имея рабочий компилятор на любом другом процессоре, вполне очевидно — в имеющийся компилятор можно добавить кросс-компиляцию в новый целевой процессор и скомпилировать сам компилятор для новой платформы и уже новый скомпилированный компилятор адаптировать к целевой платформе. Т.е. с переносом чего-то готового, на новый процессор, особых проблем нет.
Есть еще компиляторы, которые не предполагают переноса на целевой процессор, например, компилятор для малых процессоров типа Pic или ATTiny. Запускать сам компилятор в этих процессорах не имеет смысла, слишком мало там аппаратных ресурсов. Этот кейс мы тоже не рассматриваем, т.к. он тривиален.
Исправление Vic, :
Даже если сам ассемблер написан на ФОРТРАНе ?
Так, конечно нет, ассмблер же не парсит язык и модель фортрана.
Но тогда возникают следующие вопросы:
- На чем изначально написан сам фортран, на котором написан ассемблер?
- Зачем на фортране написали ассемблер? Фортрана в чем-то не хватает (например, операционка не получается на чистом фортране без ассемблерных вставок)?
Просьба учесть, что мы ведем речь в контексте вот этого исходного сообщения (ссылка на сообщение), где на начальном этапе у нас есть только «машинные коды», и наша цель сделать компилятор, который будет и сам работать и код генерировать на том же целевом процессоре.
А что делать в общем и целом, при смене процессора (с новым набором команд), но имея рабочий компилятор на любом другом процессоре, вполне очевидно — в компилятор можно добавить кросс-компиляцию в новый целевой процессор и скомпилировать сам компилятор для новой платформы и уже новый скомпилированный компилятор адаптировать к целевой платформе. Т.е. с переносом чего-то готового, на новый процессор, особых проблем нет.
Есть еще компиляторы, которые не предполагают переноса на целевой процессор, например, компилятор для малых процессоров типа Pic или ATTiny. Запускать сам компилятор в этих процессорах не имеет смысла, слишком мало там аппаратных ресурсов. Этот кейс мы тоже не рассматриваем, т.к. он тривиален.
Исправление Vic, :
Даже если сам ассемблер написан на ФОРТРАНе ?
Так, конечно нет, ассмблер же не парсит язык и модель фортрана.
Но тогда возникают следующие вопросы:
- На чем изначально написан сам фортран, на котором написан ассемблер?
- Зачем на фортране написали ассемблер? Фортрана в чем-то не хватает (например, операционка не получается на фортране)?
Просьба учесть, что мы ведем речь в контексте вот этого исходного сообщения (ссылка на сообщение), где на начальном этапе у нас есть только «машинные коды», и наша цель сделать компилятор, который будет и сам работать и код генерировать на том же целевом процессоре.
А что делать в общем и целом, при смене процессора (с новым набором команд), но имея рабочий компилятор на любом другом процессоре, вполне очевидно — в компилятор можно добавить кросс-компиляцию в новый целевой процессор и скомпилировать сам компилятор для новой платформы и уже новый скомпилированный компилятор адаптировать к целевой платформе. Т.е. с переносом чего-то готового, на новый процессор, особых проблем нет.
Есть еще компиляторы, которые не предполагают переноса на целевой процессор, например, компилятор для малых процессоров типа Pic или ATTiny. Запускать сам компилятор в этих процессорах не имеет смысла, слишком мало там аппаратных ресурсов. Этот кейс мы тоже не рассматриваем, т.к. он тривиален.
Исправление Vic, :
Даже если сам ассемблер написан на ФОРТРАНе ?
Так, конечно нет, ассмблер же не парсит язык и модель фортрана.
Но тогда возникают следующие вопросы:
- На чем изначально написан сам фортран, на котором написан ассемблер?
- Зачем на фортране написали ассемблер? Фортрана в чем-то не хватает?
Просьба учесть, что мы ведем речь в контексте вот этого исходного сообщения (ссылка на сообщение), где на начальном этапе у нас есть только «машинные коды», и наша цель сделать компилятор, который будет и сам работать и код генерировать на том же целевом процессоре.
А что делать в общем и целом, при смене процессора (с новым набором команд), но имея рабочий компилятор на любом другом процессоре, вполне очевидно — в компилятор можно добавить кросс-компиляцию в новый целевой процессор и скомпилировать сам компилятор для новой платформы и уже новый скомпилированный компилятор адаптировать к целевой платформе. Т.е. с переносом чего-то готового, на новый процессор, особых проблем нет.
Есть еще компиляторы, которые не предполагают переноса на целевой процессор, например, компилятор для малых процессоров типа Pic или ATTiny. Запускать сам компилятор в этих процессорах не имеет смысла, слишком мало там аппаратных ресурсов. Этот кейс мы тоже не рассматриваем, т.к. он тривиален.
Исправление Vic, :
Даже если сам ассемблер написан на ФОРТРАНе ?
Так, конечно нет, ассмблер же не парсит язык и модель фортрана.
Но тогда возникают следующие вопросы:
- На чем изначально написан сам фортран, на котором написан ассемблер?
- Зачем на фортране написали ассемблер?
Просьба учесть, что мы ведем речь в контексте вот этого исходного сообщения (ссылка на сообщение), где на начальном этапе у нас есть только «машинные коды», и наша цель сделать компилятор, который будет и сам работать и код генерировать на том же целевом процессоре.
А что делать в общем и целом, при смене процессора (с новым набором команд), но имея рабочий компилятор на любом другом процессоре, вполне очевидно — в компилятор можно добавить кросс-компиляцию в новый целевой процессор и скомпилировать сам компилятор для новой платформы и уже новый скомпилированный компилятор адаптировать к целевой платформе. Т.е. с переносом чего-то готового, на новый процессор, особых проблем нет.
Есть еще компиляторы, которые не предполагают переноса на целевой процессор, например, компилятор для малых процессоров типа Pic или ATTiny. Запускать сам компилятор в этих процессорах не имеет смысла, слишком мало там аппаратных ресурсов. Этот кейс мы тоже не рассматриваем, т.к. он тривиален.
Исходная версия Vic, :
Даже если сам ассемблер написан на ФОРТРАНе ?
Так, конечно нет, ассмблер же не парсит язык и модель фортрана.
Но тогда возникают следующие вопросы:
- На чем изначально написан сам фортран, на котором написан ассемблер?
- Зачем на фортране написали ассемблер?
Просьба учесть, что мы ведем речь в контексте вот этого исходного сообщения (ссылка на сообщение), где на начальном этапе у нас есть только «машинные коды», и наша цель сделать компилятор, который будет и сам работать и код генерировать на том же целевом процессоре.
А что делать в общем и целом, при смене процессора (с новым набором команд), но имея рабочий компилятор на любом другом процессоре, вполне очевидно — в компилятор можно добавить кросс-компиляцию в новый целевой процессор и скомпилировать сам компилятор для новой платформы и уже новый скомпилированный компилятор адаптировать к целевой платформе.
Есть еще компиляторы, которые не предполагают переноса на целевой процессор, например, компилятор для малых процессоров типа Pic или ATTiny. Запускать сам компилятор в этих процессорах не имеет смысла, слишком мало там аппаратных ресурсов. Этот кейс мы тоже не рассматриваем, т.к. он тривиален.