Bu işlemler uzun süren işlemler sana kendi yazdığım toplama kodunu göndereyim ona bakarak bişeyler çıkar
Sola kaydırma işlemi için hazır komut var zaten sadece araya gecikme adlı alt yordamı ekleyeceksin onu da yolluyorum

16f84 ile senin işlemci aynı olması laızm

Toplama fonksiyonu 16 bitlik olarak gösterir çünkü toplam sonucu 8 biti aşabilir
;===PROG20.ASM====23706/2000=======
	LIST	P=16F84
INCLUDE	"P16F84.INC"
	CLRF	PORTB 	;PORTB' yi sil.
	BSF	STATUS,5 	;BANKl'e geç.
	CLRF	TRISB 	;B portu tüm uçları çıkıs.
	MOVLW	h'FF' 	;W¬h'FF'
	MOVWF	TRISA 	;A potu tüın uçları giris.
	BCF	STATUS, 5 	;BANK0'a geç.
	REG20	EQU	0X0C
	REG21	EQU	0X0D
	REG22	EQU	0X0E
	REG23	EQU	0X0F
	REG24	EQU	0X1A
	REG25	EQU	0X1B
	REG26	EQU	0X1C
	REG27	EQU	0X1D
	REG28	EQU	0X1E
;AL ve AH ilk sayının düşük ve yüksek biti
;BL ve BH 2. sayının düşük ve yüksek biti
;sonra alt tarafta bunlar toplanıyor
;sonucun düşük biti ilk olarak gösteriylir A1 butonuna basıldıgında yüksek bit ;gösteriliyor
	AL	EQU 0x3D 	;AL registerinin adresi
	AH	EQU 0x3E  	;AH registeri adresi
	BL	EQU 0x3F  	;BL registerinin adresi
	BH	EQU 0x40  	;BH registerinin adresi
TOPLA ;-----------------------------------------
	MOVF	AL, W ;-->W¬AL
	ADDWF	BL, F 	;-->BL=BL+W(AL), alt byte toplamı
	BTFSC	STATUS, 0 ;-->CARRY FLAG=1 mi ?
	INCF	BH, F ;-->Evet, BH=BH+1
	MOVF	AH, W ;-->W¬AH
	ADDWF	BH, F ;-->BH=BH+W(AH) , üst byte toplamı
ALT_BYTE_GOSTER1
	MOVF	BL, W ;-->W¬BL
	MOVWF	PORTB ;-->Alt byte toplamını göster
TEST_A11
	BTFSC	PORTA, 1 ;-->A1 butonuna basıldı mı?
	GOTO	TEST_A11 ;-->Hayır, tekrar test et
UST_BYTE_GOSTER1
	MOVF	BH, W ;-->Evet, W¬0BH
	MOVWF	PORTB ;-->Üst byte toplamını göster.
Diğer ödevin içinde sola veya saga öteleme komutu var tek yapmak gereken aşagıdaki gecikme altyordamını içine ekleyip çağırman
SAYAC1	EQU	0X0C
SAYAC2	EQU	0X0D
GECIKME	MOVLW 	0X90
	MOVWF	SAYAC1
DONGU1 	MOVLW	0X90
	MOVWF	SAYAC2
DONGU2	DECFSZ	SAYAC2,1
	GOTO 	DONGU2
	DECFSZ	SAYAC1,1
	GOTO	DONGU1
	RETURN
	END