1. vaja rešitve
완료 조건
@-------------------------------------
@ naloga 1
@-------------------------------------
.text
.org 0x20
S1: .byte 15
S2: .byte 10
.align
.global __start
@ nepredznaceni, pogojni skoki
__start: adr r4,S1
adr r5,S2
ldrb r1,[r4] @S1->r1
ldrb r2,[r5] @S2->r2
cmp r1, r2 @r1 > r2
bhi vecjas1 @ da
sub r2, r2, r1
strb r2, [r5]
b __end
vecjas1: sub r1, r1, r2 @ odstejem
strb r1, [r4]
__end: b __end
@-------------------------------------
@ predznaceni, pogojni skoki
__start: adr r4,S1
adr r5,S2
ldrsb r1,[r4] @S1->r1
ldrsb r2,[r5] @S2->r2
cmp r1, r2 @r1 > r2
bgt vecjas1 @ da
sub r2, r2, r1
strb r2, [r5]
b __end
vecjas1: sub r1, r1, r2 @ odstejem
strb r1, [r4]
@-------------------------------------
@ predznaceni, pogojni izvajanje ukazov
__start: adr r4,S1
adr r5,S2
ldrsb r1,[r4] @S1->r1
ldrsb r2,[r5] @S2->r2
cmp r1, r2 @r1 > r2
suble r2, r2, r1
strleb r2, [r5]
vecjas1: subgt r1, r1, r2 @ odstejem
strgtb r1, [r4]
@-------------------------------------
@nepredzn., pogojno izvajanje ukazov
@ nepredznaceni, pogojni izvajanje ukazov
__start: adr r4,S1
adr r5,S2
ldrb r1,[r4] @S1->r1
ldrb r2,[r5] @S2->r2
cmp r1, r2 @r1 > r2
subls r2, r2, r1
strlsb r2, [r5]
vecjas1: subhi r1, r1, r2 @ odstejem
strhib r1, [r4]
@-------------------------------------
@ naloga 2
@-------------------------------------
@-------------------------------------
@nepredznac.
.text
.org 0x20
tabela: .byte 23,54,2,76,53,57,5,1,0,11
.align
.global __start
__start:
/*
mov r1, #53
mov r1, #60
*/
mov r1, #2
adr r0, tabela
zanka: ldrb r2, [r0]
add r0, r0, #1
cmp r2, r1
/*
bne zanka
bls zanka
*/
bhs zanka
@-------------------------------------
@predznac.
.text
.org 0x20
tabela: .byte byte 0,-5,2,-4,11,12,32,-10,-11,-22
.align
.global __start
__start:
/*
mov r1, $11
mov r1, #30
*/
mov r1, #-11
adr r0, tabela
zanka: ldrb r2, [r0]
add r0, r0, #1
cmp r2, r1
/*
bne zanka
ble zanka
*/
bge zanka
@-------------------------------------
@ naloga 3a
@-------------------------------------
.text
.org 0x20
tabela: .byte 1,100,255,24,88,31,56,192,155,224,48,0,128,99,147,177
rez: .space 1
.align
.global __start
__start:
adr r0, tabela
mov r1, #16
mov r2, #0
zanka: ldrsb r3, [r0]
add r0, r0, #1
cmp r3, #100
addgt r2, r2, #1
subs r1, r1, #1
bne zanka
strb r2, rez
@-------------------------------------
@ naloga 3b
@-------------------------------------
.text
.org 0x20
tabela: .byte 1,100,255,24,88,31,56,192,155,224,48,0,128,99,147,177
rez: .space 1
.align
.global __start
__start:
adr r0, tabela
mov r1, #16
mov r2, #0
zanka: ldrb r3, [r0]
add r0, r0, #1
cmp r3, #100
addhi r2, r2, #1
subs r1, r1, #1
bne zanka
strb r2, rez
@-------------------------------------
@ naloga 3c
@-------------------------------------
.text
.org 0x20
tabela: .byte 1,100,255,24,88,31,56,192,155,224,48,0,128,99,147,177
rez: .space 1
.align
.global __start
__start:
adr r0, tabela
mov r1, #16
mov r2, #0
zanka: ldrb r3, [r0]
cmp r3, #48
blo preskoci
cmp r3, #57
bhi preskoci
add r2, r2, #1
preskoci: add r0, r0, #1
subs r1, r1, #1
bne zanka
strb r2, rez
마지막 수정됨: 월요일, 14 10월 2024, 11:45 PM