elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  ASM (Moderador: Eternal Idol)
| | | |-+  CIfrado cesar ensamblador
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: CIfrado cesar ensamblador  (Leído 3,508 veces)
el conquistador13

Desconectado Desconectado

Mensajes: 5


Ver Perfil
CIfrado cesar ensamblador
« en: 27 Febrero 2017, 19:25 pm »

Tengo que hacer un programa en ensamblador(mips32 usando el compilador MARS4.5) que dada una cadena de caracteres y el tamaño de esta(la sección de datos nos la dan), pedir al usuario un código y cambiar sumando a cada letra de la cadena ese valor  e imprimir de nuevo la cadena modificada por ahora llevo esto (lo primero son comentario de como deberia funcionar )

Código:
###################################################
#Paso 1 : Valores iniciales
#Guardo en $t1 la direccion de la cadena 1
#Guardo en $t1 la direccion de la cadena 2
#Pedimos codigo por teclado y guardo en $t3
#Guardo en $t4 tam
#Paso 2 : Bucle (accedo al elemento de cadena 1, sumo el codigo y guardo en cad2)
#BUCLE:
# Cargo $t5 el contenido de $t1
# Sumo a $t5 el codigo $t3 y lo guardo en $t5
# Almaceno $t5 en ($t2)
# Sumo 1 a $t1
# Sumo 1 a $t2
# resto uno al contador
# si el contador es distinot de cero salto a BUCLE
#Paso 3 : Sacar por pantalla la cadena 2
###################################################
.text
start : #Inicio programa
la $t1, cad1
la $t2, cad2
la $a0, entrada
li $v0, 4
syscall
li $v0, 5
syscall
add $t3, $0, $v0
lw $t4, tam

BUCLE: lb $t5, ($t1)
add $t5, $t5, $t3
sb $t5, ($t2)
addi $t1, $t1, 1
addi $t1, $t2, 1
subi $t4, $t4, 1
bnez $t4, BUCLE

la $a0, ($t2)
li $v0, 4
syscall

exit: #Fin del programa
la $v0, 10
syscall
.data
cad1 : .asciiz "cadenainicial"
entrada:.asciiz "Introduzca codigo "
cad2 : .space  14 #reserva espacio en memoria para 14 byts
tam: .word 13
que funciona para na letra sola pero para una cadena mas larga de error y no entiendo por que
Alguien que me pueda ayudar??



Ya esta solucionado gracias a todo


« Última modificación: 1 Marzo 2017, 14:30 pm por Eternal Idol » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Cifrado César en Python
Scripting
.:WindHack:. 3 7,461 Último mensaje 7 Junio 2010, 02:10 am
por Novlucker
Qué preferis: Cifrado cesar o Ensalada cesar?
Foro Libre
Castg! 6 4,546 Último mensaje 1 Agosto 2011, 22:45 pm
por scr21
[+] mCesar - Cifrado Cesar
Programación Visual Basic
|SMT| 1 2,151 Último mensaje 8 Septiembre 2013, 16:09 pm
por noele1995
cifrado cesar en c
Programación C/C++
kikian94 6 10,554 Último mensaje 29 Octubre 2013, 15:01 pm
por kikian94
Cifrado de cesar en [C] [?]
Programación C/C++
katy09811 3 5,280 Último mensaje 19 Julio 2015, 22:09 pm
por ivancea96
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines