Поиск по сайту:

 


По базе:  

микроэлектроника, микросхема, микроконтроллер, память, msp430, MSP430, Atmel, Maxim, LCD, hd44780, t6963, sed1335, SED1335, mega128, avr, mega128  
  Главная страница > Обзоры по типам > Микроконтроллеры > MAXQ

реклама

 




Мероприятия:




Пример выполнения аппаратного умножения

Пример прикладной программы аппаратного умножения.

;Умножение без учета знака двух 16- битных операндов
     move 	MCNT, 	#21h 	; CLD=1, SUS=1 (без знака)
     move 	MA, 	#0FFFh 	; MC2:0=0000_0000_0000h
     move 	MB, 	#1001h 	; MC1R:MC0R= 00FF_FFFFh
                                ; MC2:0=0000_00FF_FFFFh
; Умножение с учетом знака двух 16- битных операндов
     move 	MCNT, 	#20h 	; CLD=1, SUS=0 (со знаком)
     move 	MA, 	#F001h 	; MC2:0=0000_0000_0000h
     move 	MB, 	#1001h 	; MC1R:MC0R= FF00_0001h
                                ; MC2:0=FFFF_FF00_0001h
;Умножение с накоплением без учета знака двух 16- битных операндов
                                ; MC2:0=0000_0100_0001h
     move 	MCNT, 	#03h 	; MMAC=1, SUS=1 (без знака)
     move 	MA, 	#0FFFh 	;
     move 	MB, 	#1001h 	;
                                ; MC1R:MC0R=02FF_FFFFh
                                ; MC2:0=0000_0200_0000h
; Умножение с накоплением с учетом знака двух 16- битных операндов
                                ; MC2:0=0000_0100_0001h
     move 	MCNT, 	#02h 	; SUS=0 (со знаком)
     move 	MA, 	#F001h 	;
     move 	MB, 	#1001h 	;
                                ; MC1R:MC0R= FF00_0003h
                                ; MC2:0=0000_0000_0002h
;Умножение с вычитанием без учета знака двух 16- битных операндов
                                ; MC2:0=0000_0100_0001h
     move 	MCNT, 	#07h 	; MMAC=1, MSUB=1, SUS=1 (без знака)
     move 	MA, 	#0FFFh 	;
     move 	MB, 	#1001h 	;
                                ; MC1R:MC0R=FF00_0003h
                                ; MC2:0=0000_0000_0002h
; Умножение с вычитанием с учетом знака двух 16- битных операндов
                                ; MC2:0=0000_0100_0001h
     move 	MCNT, 	#06h 	; MMAC=1, MSUB=1, SUS=0 (со знаком)
     move 	MA, 	#F001h 	;
     move 	MB, 	#1001h 	;
                                ; MC1R:MC0R= 02FF_FFFFh
                                ; MC2:0=0000_0200_0000h
; Умножение с инверсией с учетом знака двух 16- битных операндов
     move 	MCNT, 	#24h 	; CLD=1, MSUB=1, SUS=0 (со знаком)
     move 	MA, 	#F001h 	; MC2:0=0000_0000_0000h
     move 	MB, 	#1001h 	; MC1R:MC0R =00FF_FFFFh
                                ; MC2:0=0000_00FF_FFFFh


<-- Предыдущая страница Оглавление Следующая страница -->





 
Впервые? | Реклама на сайте | О проекте | Карта портала
тел. редакции: +7 (995) 900 6254. e-mail:info@eust.ru
©1998-2023 Рынок Микроэлектроники