我需要将两个无符号数字相乘(在这种情况下,数字是234和24),但是我不知道该怎么做。我需要将它们乘以而不使用寄存器R16,R17和R18(寄存器在代码箱中)。我试图通过仅输入mul 234, 24
将它们相乘,但是ATMEL工作室告诉我,数字是无效的寄存器。微控制器是ATmega8。
;
; Vjezba_1.asm
;
; Created: 4/29/2020 8:57:18 PM
; Author : Ilario
;
//1. zad
.DEF rez = R18
.DEF op1 = R17
.DEF op2 = R16
//2. zad
ldi op1, 67
ldi op2, 76
ldi rez, 0
//3. zad
Inc op1
add rez, op1
add rez, op2
//4. zad
dec rez
sub rez, op2
//5. zad
add 0x0F1AC2, 0xA2320F
//6. zad
mul 234, 24
start:
inc r16
rjmp start
.DEF varA = R20
.DEF varB = R21
ldi varA, 245
ldi varB, 24
mul R20, R21
ldi rezo2, 0
ldi rezo1, 0
add rezo1, R1
add rezo2, R0