Si quieres construir algo con una Raspberry Pi, seguramente uses resistencias. Para este ejercicio, necesitas saber dos cosas sobre ellas:
Para sortear este problema, los fabricantes imprimen bandas de colores en las resistencias para indicar sus valores de resistencia. Cada banda tiene una posición y un valor numérico.
Las 2 primeras bandas de una resistencia siguen un esquema de codificación sencillo: cada color se corresponde con un único número. Por ejemplo, si imprimieran una banda brown (valor 1) seguida de una banda green (valor 5), se traduciría al número 15.
En este ejercicio vas a crear un programa muy útil para no tener que recordar los valores de las bandas. El programa recibirá nombres de colores como entrada y devolverá un número de dos dígitos, ¡incluso si la entrada tiene más de dos colores!
Los colores de las bandas están codificados de la siguiente manera:
Del ejemplo anterior: brown-green debería devolver 15, y brown-green-violet debería devolver 15 también, ignorando el tercer color.
| Registro | Uso | Tipo | Descripción |
|---|---|---|---|
$a0 |
entrada | dirección | primer color como cadena terminada en nulo |
$a1 |
entrada | dirección | segundo color como cadena terminada en nulo |
$a2 |
entrada | dirección | tercer color como cadena terminada en nulo (posiblemente vacía) |
$v0 |
salida | entero | valor de la resistencia |
$t0-9 |
temporal | cualquiera | para almacenamiento temporal |
Regístrate en Exercism para aprender y dominar MIPS Assembly con 70 ejercicios y mentoría humana real, todo gratis.