| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Песочница > Почему нет процессоров, понимающих высокий уровень |
| Автор: ТарасАтавин 8.10.2013, 09:14 |
| Pentium имеет RISC-ядро, в этот процессор зашита программа, интерпретирующая CISC-опкоды x86, чем наглядно демонстрируется, что процессор может интерпретировать. Но почему только код? Чем плох процессор, например, языка c++? Или реальная, а не виртуальная, pascal-машина? Физическая джавамашина ещё предположим имеет свои проблемы, например, с памятью: из-за отсутствия указателей ни в java-байт-код, ни в java-текст нельзя адекватно и при этом полностью формально перевести текст c++, содержащий new, delete и адресную арифметику, а запрещать целый язык, даже один, не разумно, а указатели есть не только на плюсах. То же самое и по той же причине относится к процессорной реализации NETфреймвок. А наоборот? Раз уж даже натив с своими низкоуровневыми адресами умудряется эмулировать ссылки, то на указателях их тоже можно построить. Что всё таки мешает? |
| Автор: CompWorm 9.10.2013, 00:49 |
Я ему ответ нарисую... (с) Шарик![]() |
| Автор: ТарасАтавин 9.10.2013, 05:43 |
| CompWorm, флейм флудом, но не до такой же степени. |
| Автор: CompWorm 9.10.2013, 08:06 |
отлично, значит рисовал не зря! поздравляю, ты только что испытал мои эмоции после прочтения твоего поста. |
| Автор: CompWorm 9.10.2013, 08:46 |
| мне кажется, тема достойна http://forum.vingrad.ru/forum/forum-513.html. прошу перенести |
| Автор: LeonidPr 12.10.2013, 19:49 |
Возможно тем, что он будет очень сложен и дорог, а следовательно никому не нужен, разве-что в академических целях. Это мое ИМХО, интересно мнение остальных. Ну и вечный вопрос:"а нафига он нужен?" И еще, что вы понимаете под процессором языка c++? напишите поконкретнее... |
| Автор: Фантом 13.10.2013, 12:33 | ||
У языков время "активной жизни", как правило, намного меньше характерного времени разработки архитектур процессоров "с нуля". Т.е. попытки разрабатывать языковые процессоры привели бы к тому, что сейчас были бы готовы результаты для каких-нибудь PL/1 и Algol-68. |
| Автор: LeonidPr 14.10.2013, 21:37 |
| А еще, этот проц был бы очень узкоспециальным. языков вон сколько, ну сделали его для пусть того же алгол-68, а со всех других точно так же трансляторы пришлось бы делать - шило на мыло по сути... |
| Автор: ТарасАтавин 1.12.2013, 05:45 | ||||||
Добавлено @ 05:56 Ну так мало как раз специализированных девайсов, что прям даже название целого класса камушков от задачи происходит. Прям так и называются: сигнальные. А ещё есть ремиконт специально для регуляторов. Языки же как раз существуют вполне универсальные. Ну в принципе да. Добавлено @ 05:58
Добавлено @ 06:00
|
| Автор: ТарасАтавин 1.12.2013, 06:23 |
| Вы мне лучше скажите, нет ли препятствий со стороны размера микропрограммы и результирующей производительности. Добавлено @ 06:30 Процессор, которому можно скормить для исполнения исходный текст на языке c++. По исполнению RISC-ядро + интерпретатор в памяти, физические расположенной в корпусе процессора, не доступной для адресации программами, загружаемыми с винчестера в линейки памяти, отдельные от самого процессора, может быть даже расположенной непосредственно на его кристалле. Центральный процессор zx spectrum не может быть по аналогии назван BASIC-процессором как минимум из-за адресуемости байтов интерпретатора даже из бейсик-программ. |
| Автор: Фантом 1.12.2013, 12:26 | ||
| Что-то в Вас любовь к некромантии проснулась... Оформился, причем многократно. Просто его регулярно "дополняют и улучшают". Впрочем, делать процессор для такого языка только сложнее. Не понял смысла.
А что, модель процессора и архитектура процессора - это теперь одно и то же? |
| Автор: ТарасАтавин 1.12.2013, 13:42 | ||||
Добавлено через 2 минуты и 58 секунд
Добавлено через 5 минут и 35 секунд Не надо заявлять, что такое процессор не нужен, я сам интуитивно чувствую бредовость всей затеи. Но именно чувствую, а хотелось бы понять. |
| Автор: Фантом 1.12.2013, 14:50 |
Упаси боже. Надеюсь, что эта химера все же помрет раньше. Изменения архитектуры в процессорах для PC не появлялись уже очень давно. Какие-то частичные поправки архитектуры - это 80386, Pentium и AMD64, все остальное имеет существенно меньшие масштабы. А для "языкового процессора" нужны куда более радикальные замены. |
| Автор: ТарасАтавин 1.12.2013, 18:04 |
| Речь не о java и не о C#, а о плюсах. Добавлено @ 18:05 Да ну! Переписать микропрограмму - это даже норму затрагивать не надо, не говоря о том, что новые команды и до связки RISC-ядро + микропрограмма-эмулятор появлялись чаще, чем некоторые программисты способны осваивать диалекты, а вот это то как раз более серьёзные изменения, конструктивные. Да, архитектура - это ещё кардинальней, но 30-40 лет и она не держится. У Intell процессор без микропрограмм на CISC ядре без квазирегистров продержался всего 17 лет и даже за это время трижды появлялись только версии команд на новые разрядности данных, не считая сопроцессоров со своими командами, а ещё всякие там кеши с конвейерами. Это для человека MOV A, 86 и MOV AL 86 - полностью одно и тоже, а MOV AX, 3046 - та же команда для других операндов, а в процессоре с CISC-ядром сам факт появления AH - это уже изменение конструкции и не только регистрового файла, но и устройства управления, чтоб оно могло распарсить код, этот регистр адресующий, и наличие только регистров H и L, или сразу и AH/AL, и объединяющего их AX - это тоже разные конструкции и с их разработкой надо было повозиться. |
| Автор: ТарасАтавин 1.12.2013, 18:33 |
| Одна причина уже есть: согласование изменений в процессоре и в языке. Ещё? Как повлияет на скорость счёта попытка на той же технологии зашить в микропрограмму не эмулятор CISC-ядра, а интерпретатор исходных текстов на языке высокого уровня? Каковы размеры памяти микропрограмм типичного интелловского, или амдешного камня в сравнении с интерпретатором исходных текстов на современном языке высокого уровня, если язык реализации - нативные опкоды RISC-процессора? |
| Автор: Фантом 1.12.2013, 23:19 | ||
Именно.
Ой ли? Сколько лет PC? |
| Автор: ТарасАтавин 2.12.2013, 06:08 |
| Тем более. Архитектура процессора и архитектура компьютера - не одно и тоже. Это на уровне компьютера в целом ПКшка и ИБМ370 равно фоннеймановы, а под заголовком "архитектура z80" в мануале по спектруму банки регистров описаны. Время "активной жизни" базирования адресов всего 17 лет, языку c++ уже 30 и он всё ещё активно развивается, то есть в приципе он ещё только на подъёме цикла, а вытеснение потомком, что четырежды за 17 лет произошло с i8086, даже не просматривается. Мелкие же изменения процессора появляются с каждой новой номинальной тактовой частотой. Да, диалекты появлюяются тоже часто. Но к архтектуре отношения не имеют точно также, как и те изменения, которые обеспечивают стабильную работу на той частоте, на которой предшественник не мог её похвастаться. А в связке RISC+микропрограмма диалектовая версия вообще не связан с конструктивными изменениями, а имеет всего лишь другую прошивку микропрограммы и разрабатываться должна не инженерами-электрониками, а программистами-кристальщиками, если только помимо диалекта в камне нет ещё какого улучшения. Что именно? Речь о плюсах и вдруг "надеюсь, что эта химера загнётся раньше". Какая из двух? Добавлено @ 06:19 Химера - это составное существо, таких языков ровно два: java и c#, оба составлены из синтаксиса c++ и архаичных работы с памятью, взятой из фортрана. А c++ полностью логичен и не содержит ничего лишнего и инородного. Даже эзотерические языки не химерны, а просто кривы, так как они эзотеричны целиком. Добавлено @ 06:21 Кстати, фортран старше самого ПК, но даже он ещё "жив", хотя ему уже 68 лет. Даже он не столько вытеснен потомками, сколько отстал от роста самой IT сферы, потому и кажется, что он стал реже использоваться. На самом деле он редко использовался даже тогда, когда у него вообще не было конкурентов. Просто потому, что мало было программистов. И те, мягко говоря, скромные позиции не сдал. А где сейчас "процессоры" 1945-го года? |
| Автор: Фантом 2.12.2013, 17:16 |
| Мне почему-то кажется, что Вы совершенно не читаете то, что Вам пишут. Стоит ли в таком случае продолжать? |