Внимание! Это временный неофициальный архив старой версии форума Полигон Призраков, созданный сочувствующим форуму участником. Этот сайт просуществует лишь до тех пор, пока администрация Полигона не сдержит своё обещание и не откроет официальный архив по адресу old.sannata.org.

Полигон-2

Форум о старых компьютерах

Объявление форума

Если пользуетесь личными сообщениями и получили по электронной почте оповещение о новом письме, не отвечайте, пожалуйста, почтой. Зайдите на форум и ответьте отправителю через ЛС.

Полигон-2 »   Технический флейм »   Самая большая legacy
RSS

Самая большая legacy

Система команд x86

<<Назад  Вперед>> Страницы: 1 2 3 4 *
Печать
 
User 0
Junior Member


Откуда: Moscow
Всего сообщений: 112
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
25 дек. 2007
La Forge, спорим, что не любой 32-разрядный :). У меня есть ARM, но в нем нет EAX.
По поводу матчасти: компьютеры и программы к ним стали настолько сложны, что невозможно быть компетентным во всех областях, как 30 лет назад.
La Forge
Advanced Member
Lt. Cmdr.

Откуда: Рязань
Всего сообщений: 3248
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
16 нояб. 2012
АРМ это не процы, а так,выдри...ки. Паразитирующая архитектура живущая по принципу "у кого бы чего содрать?". И пусть сейчас их много...ну так жуков колорадских тоже много. И это временно. (я не про жуков :) )
[q]
Только бы не смешивать в ходе диалога предположения и догадки с фактами
[/q]
Тут я только ЗА
Fe-Restorator
Гость

Ссылка

User 0 написал:
[q]
Это не так. При обращении к AX в любом режиме старшее слово EAX остается неприкосновенны
[/q]
Fe-Restorator написал:
[q]
автообнуление старших битов, что есмь опция/фича компилятора...
[/q]
Читай внимательнее: компилятора, а не проца! Проц тупой, автоматически почти ничего не умеет в плане подмены кода! Однако, на обнуление тратятся такты, например: XOR EAX,EAX, MOV EAX,1... Причём, сперва нужно привести конструкцию MOV AL,2 к виду MOV EAX,0002h!!!
ЗЫ. Все мы, хором, отклонились от темы. ТС вопрошал, будет-ли код отличаться, и правильный ответ - будет, однозначно. Даже при оптимизации "под старый проц". Ибо по конструкции MOV EAX,0002h трудно определить, адресуется весь AX или только его половинка, AL/AH!!! Более того, компилятор уже заточен оперировать половинками EAX, т.е. целыми регистрами 8086, без деления на их половинки, и на 8088 такой код неоперабелен, на 60% минимум.
Иными словами, у современных процов давно-уж нет "наследия 8086", в том виде, как сие утверждал ТС. Говорить, что i7 строго следует "архитектуре и принципам 8086" - неверно, принципиально! Современные процы поддерживают программирование "в стиле х8086", ценою потери 97% производительности всего компа.

La Forge написал:
[q]
Fe-Restorator учите матчась.
[/q]
Сделай сие смостоятельно, ОК? Листинг, приведённый ТС вообще EAX не содержит, об чём пляшет весь мой пост. Запроси его у ТС, зря он спрятал листинг под "требование через ЛС".
И впредь, знай, где звон, прежде, чем его услышишь.
Сейчас на форуме
La Forge
Advanced Member
Lt. Cmdr.

Откуда: Рязань
Всего сообщений: 3248
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
16 нояб. 2012
Автор, текст проги в студию pls.
Fe-Restorator, повежливее pls.
DrPass
Advanced Member


Откуда: Донецк
Всего сообщений: 3566
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
17 апр. 2005
Fe-Restorator написал:
[q]
Читай внимательнее: компилятора, а не проца! Проц тупой, автоматически почти ничего не умеет в плане подмены кода! Однако, на обнуление тратятся такты, например: XOR EAX,EAX, MOV EAX,1... Причём, сперва нужно привести конструкцию MOV AL,2 к виду MOV EAX,0002h!!!
[/q]
Компилятор ничего не обнуляет. А ассемблер - тем более. Если в тексте программы написано MOV AL, 2, процессору будет скормлено именно MOV AL, 2, а не MOV EAX,0002h. Процессор сам разберется, что с этим сделать.

Fe-Restorator написал:
[q]
Более того, компилятор уже заточен оперировать половинками EAX, т.е. целыми регистрами 8086, без деления на их половинки, и на 8088 такой код неоперабелен, на 60% минимум
[/q]
Операбелен на 100%. Код 8088 оперирует такими же 16-битными "половинками EAX", как и 8086. Он не зря вышел на год позже 8086, Интел этот год потратила на разработку контроллера шины 8088, который при обработке команд с 16-битными операндами делает два цикла обращения к памяти, вытаскивая оба байта и "склеивая" их в регистре в одно целое перед операцией, дабы программист не задумывался о том, что по факту работает с 8-битной машинкой.


Fe-Restorator написал:
[q]
Говорить, что i7 строго следует "архитектуре и принципам 8086" - неверно, принципиально! Современные процы поддерживают программирование "в стиле х8086", ценою потери 97% производительности всего компа.
[/q]
Чесслово, это ты тоже сам так домыслил, да? Или тогда уже напиши, где прочитал - я эту статью прокритикую :)
Tronix
Advanced Member


Откуда: Москва
Всего сообщений: 1749
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
15 янв. 2008
Мне кажется, что Fe-Restorator чего-то не то курит. core i7 обычный представитель x86, и на нем спокойно запускается MS-DOS, потому что у него, как и у любого x86, есть Real Mode. И работает он в нем нативно, исполняя нативный 8086 код.

Не спорю, вполне возможно в самом камне есть какие-то аппаратно-програмные прослойки, но это для нас не важно в принципе, так как он работает с нативным 8086 кодом на номинальной заявленной частоте. Вот если бы он выполнял 8086 код медленнее, чем его максимальная скорость - тогда да, можно было бы говорить что что-то здесь не так. А так - самый обычный x86. Что 386, что i7 - для real mode разницы нет ваще никакой.
User 0
Junior Member


Откуда: Moscow
Всего сообщений: 112
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
25 дек. 2007
La Forge, текст программы возвращен.
Мы тут все время отклоняемся от темы. Программа лишь иллюстрировала разницу в скорости цикла на разных процессорах, это не имеет отношения к основному вопросу, который благодаря DrPass я считаю выясненным.
La Forge
Advanced Member
Lt. Cmdr.

Откуда: Рязань
Всего сообщений: 3248
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
16 нояб. 2012
Ну насколько я помню ASM это обычная прога для 16-разрядного проца 8086-286. Но думаю она заработает и на I7 тоже :)
<<Назад  Вперед>> Страницы: 1 2 3 4 *
Печать
Полигон-2 »   Технический флейм »   Самая большая legacy
RSS

0 посетителей просмотрели эту тему за последние 15 минут
В том числе: 0 гостей, 0 скрытых пользователей

Последние RSS
[Москва] LIQUID-Акция. Сливаются разъемы CF
МС7004 и 7004А на AT и XT
Пайка термотрубок
Проммать s478 PEAK 715VL2-HT ( Full-Size SBC)
Подскажите по 386 материке по джамперам.

Самые активные 5 тем RSS