EnsambladorR2000

Páginas: 7 (1656 palabras) Publicado: 7 de noviembre de 2015
CUADRO RESUMEN DEL LENGUAJE ENSAMBLADOR BÁSICO DEL MIPS-R2000
CARGA
lw rt,dirección
Carga palabra
I
Carga los 32 bits almacenados en la palabra de memoria
especificada por dirección en el registro rt.

lw $s0, 12($a0) # $s0 ← Mem[ 12 + $a0 ]

ARITMÉTICAS
add rd, rs, rt
Suma
R
Suma el contenido de los registros rs y rt, considerando el
signo. El resultado se almacena en el registro rdCOMPARACIONES
slt rd, rs, rt
Activa si menor
R
Pone el registro rd a 1 si rs es menor que rt y a 0 en caso
contrario

add $t0, $a0, $a1

slt $t0, $a0, $a1

# $t0 ←$a0 + $a1

lb rt, dirección Carga byte y extiende signo
I
Carga los 8 bits almacenados en el byte de memoria
especificado por dirección en el LSB del registro rt y
extiende el signo

addu rd, rs, rt
Suma sin signo
R
Suma el contenido de losregistros rs y rt, sin considerar el
signo. El resultado se almacena en el registro rd

lb $s0, 12($a0) # $s0(7..0) ← Mem[ 12 + $a0 ](1byte)
# $s0(31..8) ← $s0(7)

sub rd, rs, rt
Resta
R
Resta el contenido de los registro rs y rt considerando el
signo. El resultado se almacena en el registro rd

lbu rt, dirección Carga byte y no extiende signo
I
Carga los 8 bits almacenados en el byte de memoriaespecificado por dirección en el LSB del registro rt sin
extender el signo

lbu $s0, 12($a0) # $s0 ← 0x000000(Mem[ 12 + $a0 ])(1byte)
lh rt, dirección Carga media palabra y ext. signo
I
Carga media palabra (16 bits) almacenada en la media
palabra de memoria especificada por la dirección en la
parte baja del registro rt y extiende el signo

lh $s0, 12($a0) # $s0 (15..0)← Mem[ 12 + $a0 ](2bytes)
# $s0(31..16)← $s0(15)

addu $t0, $a0, $a1

# $t0 ←$a0 + $a1

# $t0 ←$a0 - $a1

sub $t0, $a0, $a1

subu rd, rs, rt
Resta sin signo
R
Resta el contenido de los registros rs y rt, sin considerar el
signo. El resultado se almacena en el registro r.

subu $t0, $a0, $a1

# $t0 ←$a0 - $a1

addi rt, rs, valor Suma inmediata
I
Suma el contenido del registro rs con el valor inmediato,
considerando el signo. Elresultado se almacena en el
registro rt.

# $t0 ←$a0 + (-24)

addi $t0, $a0, -24

lhu rt, dirección Carga media palabra y no ext. signo I
Carga media palabra (16 bits) almacenada en la media
palabra de memoria especificada por la dirección en la
parte baja del registro rt y no extiende el signo

addiu rt, rs, valor Suma inmediata sin signo
I
Suma el contenido del registro rs con el valor inmediato,
sinconsiderar el signo. El resultado se almacena en el
registro rt.

lhu $s0, 12($a0) # $s0← 0x0000Mem[ 12 + $a0 ])(2bytes)

addiu $t0, $a0, 24

la reg, dirección Carga dirección
Carga la dirección calculada en reg

mult rs, rt
Multiplicación
R
Multiplica el contenido de los registros rs y rt. Los 32 MSB
del resultado se almacenan en el registro HI y los 32 LSB
en el registro LO

la $s0, VAR

PS

#$s0← dir. asociada a etiqueta VAR

lui rt, dato
Carga inmediata superior
I
Carga el dato inmediato en los 16 MSB del registro rt

lui $s0, 12

# $s0(31..16) ← 12
# $s0(15..0) ← 0x0000

li reg, dato
Carga inmediato
Carga el dato inmediato en el registro reg.

li $s0, 12

# $s0 ← 12

mult $s0, $s1
div rs, rt

PS

# $t0 ←$a0 + 24

# $HI ←($s0 * $s1) (31…16)
# $LO←($s0 * $s1) (15…0)

División
R
Divideel registro rs por el rt. El cociente se almacena en LO
y el resto en HI.

div $s0, $s1

# $LO ← $s0 / $s1
# $HI ← $s0 % $s1

# if ( $a0 < $a1) $t0 ← 1
# else $t0 ← 0

slti rt, rs, inm
Activa si menor con inmediato
I
Pone el registro rt a 1 si rs es menor que el dato inmediato
inm y a 0 en caso contrario

slti $t0, $a0, -15

# if ( $a0 < -15) $t0 ← 1
# else $t0 ← 0

seq rdest, rsrc1, rsrc2
Activasi igual
PS
Pone el registro rdest a 1 si rsrc1 es igual que rsrc2 y a 0 en
caso contrario

seq $t0, $a0, $a2

# if ( $a0 == $a2) $t0 ← 1
# else $t0 ← 0

sge rdest, rsrc1, rsrc2
Activa si mayor o igual
PS
Pone el registro rdest a 1 si rsrc1 es mayor o igual que rsrc2
y a 0 en caso contrario

sge $t0, $a0, $a2

# if ( $a0 >= $a2) $t0 ← 1
# else $t0 ← 0

sgt rdest, rsrc1, rsrc2
Activa si mayor...
Leer documento completo

Regístrate para leer el documento completo.

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS