diff options
author | Santo Cariotti <dcariotti24@gmail.com> | 2020-04-02 14:34:08 +0200 |
---|---|---|
committer | Santo Cariotti <dcariotti24@gmail.com> | 2020-04-02 14:34:08 +0200 |
commit | 6ca4ba340a069f8ef79c40140c90dea28c64f678 (patch) | |
tree | ea97ea912206f319e0a25dc4271ea35e858dc7ef /I_anno | |
parent | 049930888329bd283d2875c57c4a97d5fc914938 (diff) |
feat: biggest num in asm
Diffstat (limited to 'I_anno')
-rw-r--r-- | I_anno/Architettura_Elaboratori/biggest.asm | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/I_anno/Architettura_Elaboratori/biggest.asm b/I_anno/Architettura_Elaboratori/biggest.asm new file mode 100644 index 0000000..a604350 --- /dev/null +++ b/I_anno/Architettura_Elaboratori/biggest.asm @@ -0,0 +1,31 @@ +array dcd 3, 6, 10, 55, -1, 120, 10, -2, 0, 0, 13 +arr_n dcd 12 + + mov r0, #arr_n + ldr r1, [r0] ; r1 = grandezza dell'array + + mov r0, #array ; r0 = array[0] + ldr r3, [r0] ; r3 = numero maggiore + +loop + cmp r1, #0 + beq loop_end + + ldr r2, [r0] + + cmp r2, r3 + bgt assign_gt + + add r0, r0, #4 + +loop_back + sub r1, r1, #1 + + b loop + +assign_gt + mov r3, r2 + b loop_back + +loop_end + end |