Сообщение Re[7]: XXX всё, УУУ навсегда от 07.10.2020 16:06
Изменено 07.10.2020 16:15 netch80
Re[7]: XXX всё, УУУ навсегда
Здравствуйте, vdimas, Вы писали:
V>Например, можно прибавлять число прямо в адрес памяти (т.е. в обычную символьную переменную) и сразу ветвиться по условию.
Ты названия давай, а не описания от балды. А то что-то не находится. Семейства BCT, BXH, BXLE все требуют регистра для переменной цикла. Документация доступна, сейчас перепроверил — нет такого.
Что-то с памятью твоей стало.
V>В отличие от, организация пары вложенных циклов на асме x86 — та еще боль.
V>Плюс постоянная необходимость сохранять/восстанавливать регистры на каждый чих.
Везде надо сохранять регистры "на каждый чих", когда их не хватает.
Разве что через LM/STM их скопом удобнее гонять туда-обратно.
N>>В паре команд типа EDMK или SRDA?
V>В паре десятков. ))
Список в студию. Пока что твои воспоминания явно страдают.
V>Можно одной командой сравнить одну строку с другой, без дурацкого вызова подпрограмм и связанного с этим манипуляциями со стеком и регистрами.
Появилось только в S/390. ЕС ЭВМ, говоришь? И тут мимо.
V>Лень копаться в воспоминаниях слишком глубоко, да и ничего из накопанного тебе всё-равно будет не интересно.
Почему же, интересно. Как мера беспочвенной фантазии
N>>Остальное слабее названных аналогов, как для программиста.
V>И зачем опять пытаться демонстрировать беспричинную радикальность? ))
V>Одни и те же алгоритмы на асме IBM/360 записывались в ~4-5 раз короче, чем на асме x86.
V>Если же брать куда как более мощную систему команд современного x86_64, то всё равно минимум в два раза "современный" асм тому древнему сольёт.
Фантаст, одна штука.
Посмотри на код, что генерируется для systemz, и удивись.
V>Для превращения программы на Ассемблере в практически нормальную программу, бо содержали ветвление от параметров.
Дададад. Ты точно всё забыл. Всякие AIF могли зависеть только от переменных, известных на этапе компиляции.
V>Для сравнения, макроподсистема макроассемблеров x86 практически никогда не использовалась, а в IBM/360 было невозможно представить относительно сложную программу без того, чтобы она процентов от 20% или более не состояла из макросов и их вызовов.
Исходники доступны. Нет, нету там никаких 20%. А вот макры в качестве системных вызовов — да, сплошь и рядом.
N>>Остальное — ручками, ручками.
V>Не, ручками это в PDP-11, хотя и он архитектурно vs x86 — вершина мысли.
V>И всё-равно — только там мог появиться "макроассемблер следующего уровня", то бишь язык Си.
V>На IBM/360 он бы не появился ни в жисть за ненадобностью.
Возьми исходники и почитай. Сразу поймёшь цену этим воспоминаниям детства
V>Например, можно прибавлять число прямо в адрес памяти (т.е. в обычную символьную переменную) и сразу ветвиться по условию.
Ты названия давай, а не описания от балды. А то что-то не находится. Семейства BCT, BXH, BXLE все требуют регистра для переменной цикла. Документация доступна, сейчас перепроверил — нет такого.
Что-то с памятью твоей стало.
V>В отличие от, организация пары вложенных циклов на асме x86 — та еще боль.
V>Плюс постоянная необходимость сохранять/восстанавливать регистры на каждый чих.
Везде надо сохранять регистры "на каждый чих", когда их не хватает.
Разве что через LM/STM их скопом удобнее гонять туда-обратно.
N>>В паре команд типа EDMK или SRDA?
V>В паре десятков. ))
Список в студию. Пока что твои воспоминания явно страдают.
V>Можно одной командой сравнить одну строку с другой, без дурацкого вызова подпрограмм и связанного с этим манипуляциями со стеком и регистрами.
Появилось только в S/390. ЕС ЭВМ, говоришь? И тут мимо.
V>Лень копаться в воспоминаниях слишком глубоко, да и ничего из накопанного тебе всё-равно будет не интересно.
Почему же, интересно. Как мера беспочвенной фантазии
N>>Остальное слабее названных аналогов, как для программиста.
V>И зачем опять пытаться демонстрировать беспричинную радикальность? ))
V>Одни и те же алгоритмы на асме IBM/360 записывались в ~4-5 раз короче, чем на асме x86.
V>Если же брать куда как более мощную систему команд современного x86_64, то всё равно минимум в два раза "современный" асм тому древнему сольёт.
Фантаст, одна штука.
Посмотри на код, что генерируется для systemz, и удивись.
V>Для превращения программы на Ассемблере в практически нормальную программу, бо содержали ветвление от параметров.
Дададад. Ты точно всё забыл. Всякие AIF могли зависеть только от переменных, известных на этапе компиляции.
V>Для сравнения, макроподсистема макроассемблеров x86 практически никогда не использовалась, а в IBM/360 было невозможно представить относительно сложную программу без того, чтобы она процентов от 20% или более не состояла из макросов и их вызовов.
Исходники доступны. Нет, нету там никаких 20%. А вот макры в качестве системных вызовов — да, сплошь и рядом.
N>>Остальное — ручками, ручками.
V>Не, ручками это в PDP-11, хотя и он архитектурно vs x86 — вершина мысли.
V>И всё-равно — только там мог появиться "макроассемблер следующего уровня", то бишь язык Си.
V>На IBM/360 он бы не появился ни в жисть за ненадобностью.
Возьми исходники и почитай. Сразу поймёшь цену этим воспоминаниям детства
Re[7]: XXX всё, УУУ навсегда
Здравствуйте, vdimas, Вы писали:
V>Например, можно прибавлять число прямо в адрес памяти (т.е. в обычную символьную переменную) и сразу ветвиться по условию.
Ты названия давай, а не описания от балды. А то что-то не находится. Семейства BCT, BXH, BXLE все требуют регистра для переменной цикла. Документация доступна, сейчас перепроверил — нет такого.
Что-то с памятью твоей стало.
V>В отличие от, организация пары вложенных циклов на асме x86 — та еще боль.
V>Плюс постоянная необходимость сохранять/восстанавливать регистры на каждый чих.
Везде надо сохранять регистры "на каждый чих", когда их не хватает.
Разве что через LM/STM их скопом удобнее гонять туда-обратно.
N>>В паре команд типа EDMK или SRDA?
V>В паре десятков. ))
Список в студию. Пока что твои воспоминания явно страдают.
V>Можно одной командой сравнить одну строку с другой, без дурацкого вызова подпрограмм и связанного с этим манипуляциями со стеком и регистрами.
Появилось только в S/390. ЕС ЭВМ, говоришь? И тут мимо.
V>Лень копаться в воспоминаниях слишком глубоко, да и ничего из накопанного тебе всё-равно будет не интересно.
Почему же, интересно. Как мера беспочвенной фантазии
N>>Остальное слабее названных аналогов, как для программиста.
V>И зачем опять пытаться демонстрировать беспричинную радикальность? ))
V>Одни и те же алгоритмы на асме IBM/360 записывались в ~4-5 раз короче, чем на асме x86.
V>Если же брать куда как более мощную систему команд современного x86_64, то всё равно минимум в два раза "современный" асм тому древнему сольёт.
Фантаст, одна штука.
Посмотри на код, что генерируется для systemz, и удивись.
И я как-то мерял одну и ту же софтину (прокси сетевого протокола) для разных архитектур:
344456 aarch64
340376 amd64
531552 mips64
466088 ppc64
355752 rv64 (без compressed)
408640 s390x
336776 sparc64
не проходят твои слова.
V>Для превращения программы на Ассемблере в практически нормальную программу, бо содержали ветвление от параметров.
Дададад. Ты точно всё забыл. Всякие AIF могли зависеть только от переменных, известных на этапе компиляции.
V>Для сравнения, макроподсистема макроассемблеров x86 практически никогда не использовалась, а в IBM/360 было невозможно представить относительно сложную программу без того, чтобы она процентов от 20% или более не состояла из макросов и их вызовов.
Исходники доступны. Нет, нету там никаких 20%. А вот макры в качестве системных вызовов — да, сплошь и рядом.
N>>Остальное — ручками, ручками.
V>Не, ручками это в PDP-11, хотя и он архитектурно vs x86 — вершина мысли.
V>И всё-равно — только там мог появиться "макроассемблер следующего уровня", то бишь язык Си.
V>На IBM/360 он бы не появился ни в жисть за ненадобностью.
Возьми исходники и почитай. Сразу поймёшь цену этим воспоминаниям детства
V>Например, можно прибавлять число прямо в адрес памяти (т.е. в обычную символьную переменную) и сразу ветвиться по условию.
Ты названия давай, а не описания от балды. А то что-то не находится. Семейства BCT, BXH, BXLE все требуют регистра для переменной цикла. Документация доступна, сейчас перепроверил — нет такого.
Что-то с памятью твоей стало.
V>В отличие от, организация пары вложенных циклов на асме x86 — та еще боль.
V>Плюс постоянная необходимость сохранять/восстанавливать регистры на каждый чих.
Везде надо сохранять регистры "на каждый чих", когда их не хватает.
Разве что через LM/STM их скопом удобнее гонять туда-обратно.
N>>В паре команд типа EDMK или SRDA?
V>В паре десятков. ))
Список в студию. Пока что твои воспоминания явно страдают.
V>Можно одной командой сравнить одну строку с другой, без дурацкого вызова подпрограмм и связанного с этим манипуляциями со стеком и регистрами.
Появилось только в S/390. ЕС ЭВМ, говоришь? И тут мимо.
V>Лень копаться в воспоминаниях слишком глубоко, да и ничего из накопанного тебе всё-равно будет не интересно.
Почему же, интересно. Как мера беспочвенной фантазии
N>>Остальное слабее названных аналогов, как для программиста.
V>И зачем опять пытаться демонстрировать беспричинную радикальность? ))
V>Одни и те же алгоритмы на асме IBM/360 записывались в ~4-5 раз короче, чем на асме x86.
V>Если же брать куда как более мощную систему команд современного x86_64, то всё равно минимум в два раза "современный" асм тому древнему сольёт.
Фантаст, одна штука.
Посмотри на код, что генерируется для systemz, и удивись.
И я как-то мерял одну и ту же софтину (прокси сетевого протокола) для разных архитектур:
344456 aarch64
340376 amd64
531552 mips64
466088 ppc64
355752 rv64 (без compressed)
408640 s390x
336776 sparc64
не проходят твои слова.
V>Для превращения программы на Ассемблере в практически нормальную программу, бо содержали ветвление от параметров.
Дададад. Ты точно всё забыл. Всякие AIF могли зависеть только от переменных, известных на этапе компиляции.
V>Для сравнения, макроподсистема макроассемблеров x86 практически никогда не использовалась, а в IBM/360 было невозможно представить относительно сложную программу без того, чтобы она процентов от 20% или более не состояла из макросов и их вызовов.
Исходники доступны. Нет, нету там никаких 20%. А вот макры в качестве системных вызовов — да, сплошь и рядом.
N>>Остальное — ручками, ручками.
V>Не, ручками это в PDP-11, хотя и он архитектурно vs x86 — вершина мысли.
V>И всё-равно — только там мог появиться "макроассемблер следующего уровня", то бишь язык Си.
V>На IBM/360 он бы не появился ни в жисть за ненадобностью.
Возьми исходники и почитай. Сразу поймёшь цену этим воспоминаниям детства