User Tag List

Показано с 1 по 10 из 45

Тема: Определение типа процессора на клонах Вектора

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    Регистрация
    01.03.2011
    Адрес
    Stamford
    Сообщений
    336
    Спасибо Благодарностей отдано 
    46
    Спасибо Благодарностей получено 
    49
    Поблагодарили
    20 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Мне тоже не очень нравится, что регистровая пара <BC> так бесславно теряет своё значение ради ora c. Наверное, стоит по-крайней мере, подумать об ora e. Единственно, категорически не нравятся варианты с ограничением по размещению в памяти. Я вижу, откуда появится [2,127], но экономия на регистре таким образом, по-моему перебор. Многие (и я) используют перемещаемый ассемблер и библиотеки, и хоть компоновщик засовывает combined сегмент данных до сегмента кода, это не гарантия, что _i8080 попадёт в начало. Делать absolute addressing mode для этих данных не хочется ещё больше по туче причин. Похоже, будем жить с последним вариантом. Было прикольно её оптимизить вдвоём. Спасибо, ivagor, надеюсь когда нибудь ещё поработать вместе. Только, наверное, offline если не против, а то вон мы тут сколько постов нагенерили. Одно оправдание, что весь процесс оптимизации на виду.

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,396
    Спасибо Благодарностей отдано 
    765
    Спасибо Благодарностей получено 
    2,368
    Поблагодарили
    1,317 сообщений
    Mentioned
    39 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от PPC Посмотреть сообщение
    Единственно, категорически не нравятся варианты с ограничением по размещению в памяти.
    Для задачи определения типа процессора это, конечно, перебор. Если бы что-то действительно критичное (графика, супер-расчеты, интерпрератор чего-то), тогда бы наверно имело смысл.

    Цитата Сообщение от PPC Посмотреть сообщение
    Похоже, будем жить с последним вариантом.
    Тогда наверно стоит зафиксировать (с учетом вышеупомянутых правок):
    Код:
    cpudetect:
    	sub	a
    	lxi	d,_z80
    	rpo
    	inr	a
    	lxi	d,_i8080
    	shlx
    	push	psw
    	pop	d
    	ora	e
    	ani	00000011b ;чтобы не зависеть от банка памяти ВМ1
    	lxi	d,_580VM1
    	rpe
    	ral
    	lxi	d,_i8085
    	ret
    И альтернативный, "почти бесстековый" вариант.
    Код:
    cpudetect:
    	sub	a
    	lxi	d,_z80
    	rpo
    	inr	a
    	lxi	d,_i8080
    	shlx
    	inr	a
    	cpi	3
    	lxi	d,_i8085
    	jof	SkipVM1
    	inr	a
    	lxi	d,_580VM1
    SkipVM1:
    	ret
    Цитата Сообщение от PPC Посмотреть сообщение
    Было прикольно её оптимизить вдвоём. Спасибо, ivagor, надеюсь когда нибудь ещё поработать вместе. Только, наверное, offline если не против, а то вон мы тут сколько постов нагенерили. Одно оправдание, что весь процесс оптимизации на виду.
    Да, было прикольно, в свою очередь хочу сказать спасибо за такое интересное и полезное взаимодействие. Когда есть взгляд со стороны, свежие идеи - меньше риск что-то просмотреть или зациклиться на неудачных решениях. Ни и дух соревновательности подталкивает
    Насчет поработать вместе - кто знает, у меня много пятниц на неделе, лучше я ничего определенного говорить не буду, но не исключно

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Определение текущего адреса
    от Alex Rider в разделе Программирование
    Ответов: 52
    Последнее: 26.07.2012, 13:38
  2. Ответов: 14
    Последнее: 29.01.2009, 13:56
  3. Определение Pentagon 1024/512
    от CPLx в разделе Программирование
    Ответов: 5
    Последнее: 02.03.2008, 22:47
  4. Определение Turbo-FM
    от Максагор в разделе Программирование
    Ответов: 21
    Последнее: 28.09.2007, 20:29
  5. Определение номера дисковода
    от goodboy в разделе Программирование
    Ответов: 2
    Последнее: 22.06.2005, 01:54

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •