User Tag List

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

Тема: Extended Instructions Set (EIS): MUL, DIV, ASH, ASHC

Древовидный режим

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

    Регистрация
    06.12.2017
    Адрес
    г. Москва
    Сообщений
    1,724
    Спасибо Благодарностей отдано 
    167
    Спасибо Благодарностей получено 
    406
    Поблагодарили
    257 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    Еще спорный момент с флагом C при умножении.
    "C: set if the result is less than -2^15 or greater than or equal to 2^15."
    Как я понимаю из этого описания, нужно установить флаг если результат <-2^15 или >=2^15, т.е. текущий вариант процедуры неправильно установит флаг, если результат =-2^15. Или я неправильно понял описание (или описание не совсем корректное). Для проверки можно, например, умножить #1 на #100000
    Странно, мне казалось, что у меня это учитывается (результат умножения, положительный, ещё до учёта знака, в R0_R1):
    Код:
    7:	TST R0		; high 16 bit
    	BNE 71
    	TST R1		; low 16 bit
    	BPL 72
    71:		INC R2	; set bit C in PSW
    72:	TST R3		; result's sign
    - - - Добавлено - - -

    Цитата Сообщение от ivagor Посмотреть сообщение
    В делении аналогичный фрагмент с не вполне корректным изменением знака
    Код:
    COM R4		; dividend was negative
    NEG R3
    Это поправлял, но, видимо, при дальнейшей доработке взял ещё неисправленный вариант. Сейчас так:
    Код:
    	COM R4		; dividend was negative
    	NEG R3
    	BNE 4
    		INC R3
    4:
    - - - Добавлено - - -

    Цитата Сообщение от ivagor Посмотреть сообщение
    Мелочь, но все же в MUL строка
    6: BCC 7
    лишняя. Нулевые множители в основной цикл не попадают, значит перед нулевым R2 точно был единичный бит в младшем разряде.
    Точно, спасибо. Убрал.
    Архив обновил: http://thesands.ru/bk0010/EIS-driver-for-BK0010.zip
    Последний раз редактировалось Manwe; 09.02.2020 в 11:24.
    manwe.pdp-11.ru

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

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

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

Похожие темы

  1. Ответов: 0
    Последнее: 29.08.2017, 14:06
  2. Sector II - Extended
    от Splinter в разделе Музыка
    Ответов: 7
    Последнее: 07.02.2014, 06:45
  3. EXTENDED MEMORY DETECTION
    от VELESOFT в разделе Память
    Ответов: 1
    Последнее: 04.04.2010, 22:50
  4. gfx extended :)
    от riskej в разделе Графика
    Ответов: 12
    Последнее: 06.08.2008, 17:58
  5. Fast 48x48 MUL | DIV
    от Sinus в разделе Программирование
    Ответов: 6
    Последнее: 05.07.2005, 17:00

Ваши права

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