Apr. 24th, 2017

ermouth: (Default)
Спектруму 35 лет! У меня была Дельта-С, мод на компонентах производства СССР.

Спектрум – прекрасная машина в том смысле, что для создания чего угодно, работающего с нормальной скоростью, нужно писáть на ассемблере. То-есть Спектрум как минимум мотивировал просто изучать ассемблер.

Более того, Z80 мотивировал изучать ассемблер глубоко

Первое, для чего мне захотелось учить асм – Game of Life Конвея. На Бейсике оно, конечно, еле ворочалось. Что интересно, прирост скорости после первого переписывания на асме меня тоже не устроил, и я стал копаться дальше.

И обнаружил, что, как сейчас помню, индексная адресация кратно медленнее просто сложения и выборки. Типа, 20 тактов против 6. 

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

Причём мне тогда казалось, что самомодицирующийся код – это вполне себе ок, даже благо. То-есть, если Лисп (про который я тогда только читал и никогда не видел) делает же рерайт куска исполняющейся программы, почему тогда в ассемблере этот трюк массово не юзают? Ведь выигрыш в скорости же )

Почему это не айс для асма, я и сам понял довольно быстро – ужé когда писал программу для решения кубика-рубика. Я затрудняюсь точно подобрать определение для отладки самомодифицирующихся программ, даже «адский мозговзрывающий кошмар» довольно мягко, по-моему )

Думаю, не преувеличу, если скажу что целое поколение инженеров началось со Спектрума.

Profile

ermouth: (Default)
ermouth

July 2017

S M T W T F S
      1
2345678
9101112131415
16171819202122
23242526 272829
3031     

Most Popular Tags

Page Summary

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 27th, 2017 04:31 am
Powered by Dreamwidth Studios