diff options
Diffstat (limited to 'semestre 3/architecture des ordinateurs/tme/tme4/exo2.asm')
| -rw-r--r-- | semestre 3/architecture des ordinateurs/tme/tme4/exo2.asm | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/semestre 3/architecture des ordinateurs/tme/tme4/exo2.asm b/semestre 3/architecture des ordinateurs/tme/tme4/exo2.asm new file mode 100644 index 0000000..9c66651 --- /dev/null +++ b/semestre 3/architecture des ordinateurs/tme/tme4/exo2.asm @@ -0,0 +1,32 @@ +.data +v1: .word -1 +v2: .word 0xFF + +o: .byte 0xFF +.text + lui $8, 0x1001 + lw $9, 0($8) + or $4, $0, $9 + ori $2,$0,1 + syscall + + lw $10, 4($8) + or $4, $10, $10 + syscall + + addi $9, $9, 1 + sw $9, 0($8) + addi $10, $10, 1 + sw $10, 4($8) + + addi $8, $8, 8 # on récupère l'adresse de o + lb $9, 0($8) + or $4, $0, $9 + syscall # affiche -1 car il l'étend + lbu $10, 0($8) + or $4, $0, $10 + syscall # affiche 255 car il n'est pas signé + + ori $2, $0, 10 + syscall +
\ No newline at end of file |
