Advertisement
AntonioVillanueva

Ejercicio 4.3 C++& ASM caracter ASCII hacia memoria

Jan 31st, 2016
209
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.03 KB | None | 0 0
  1. /* Ejercicio 4.3  Escriba un programa C++& ASM in line  que facilitada una zona de memoria
  2.  con el espacio suficiente , almacene en la misma una tabla caracteres
  3.  ASCII del espacio hasta '~' El bucle estara controlado por un un condicional
  4.  que habra que verificar al final de cada ciclo
  5.  Lenguaje Ensamblador Francisco Charte Ojeda ed. ANAYA
  6.  */
  7. #include <iostream>
  8. using namespace std;
  9. int main (){
  10.  char ascii[256];  
  11.  asm(
  12.     "mov %[ascii],%%rdx \n\t"/* direccion en memoria , puntero rdx o edx*/
  13.     "mov $' ',%%al \n\t"/*carga inicio ...ASCII.. desde el espacio */
  14.     "inicio :\n\t"
  15.     "mov %%al,(%%rdx) \n\t"/* copia el caracter ASCII en memoria */
  16.    
  17.     "inc %%rdx \n\t"/* incrementa puntero memoria */
  18.     "inc %%al \n\t"/* incrementa ASCII */
  19.     "cmp $'~',%%al \n\t"/* ha llegado al fin de los ASCII ==~ ? */
  20.     "jz fin \n\t "/* ASCII == ~ salir */
  21.  
  22.    
  23.     "jmp inicio \n\t"/* bucle */
  24.     "fin : \n\t"/* salida */
  25.    
  26.     :
  27.     :[ascii] "r"(ascii)
  28.  );
  29.  
  30.  for (auto i=0 ;i<94;i++){
  31.      cout <<"index ["<<i<<"] ="<<ascii[i]<<endl;
  32.  }
  33.  
  34. return 0;
  35. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement