Foros del Web » Programación para mayores de 30 ;) » C/C++ »

C con MMX ensamblador

Estas en el tema de C con MMX ensamblador en el foro de C/C++ en Foros del Web. Buenas noches a todos. Soy nueva en este foro de web y en ensamblador, espero me ayuden con esta pregunta se los agraeceria mucho Bueno ...
  #1 (permalink)  
Antiguo 07/01/2011, 21:30
 
Fecha de Ingreso: enero-2011
Mensajes: 2
Antigüedad: 13 años, 3 meses
Puntos: 0
C con MMX ensamblador

Buenas noches a todos. Soy nueva en este foro de web y en ensamblador, espero me ayuden con esta pregunta se los agraeceria mucho

Bueno yo estoy trabajano con compilación cruzada, es decir, parte de codigo en c
y otro en ensamblador , para ello estoy utlizando Notepad++. Bueno mi duda es como se utiliza MMX para llenar una matriz de nxn. Si tengo N elementos estos, deben de quedar en 2 matrices de tal manera que la interseccion sea vacia y que queden de manera aleatoria. es decir

si n=10
a=[1,5,6,2,3] b=[4,7,8,9,10]

luego hacer la resta de cada compnente y colocar su resutado en un vector.

Espero me puedan ayudar, se que es un poco largo pero con esto terminaria mi proyecto que necesito
  #2 (permalink)  
Antiguo 15/01/2011, 07:14
 
Fecha de Ingreso: enero-2011
Mensajes: 2
Antigüedad: 13 años, 3 meses
Puntos: 0
Respuesta: C con MMX ensamblador

Hola,

yo también estoy intentando aprender como va MMX. Si alguien pudiera ayudarme lo agradeceria mucho. Tengo que hacer un programa que cuente el numero de veces que aparece un caracter en una cadena. La cadena y el caracter se introducen por la entrada estandar. Ejemplo:

Cadena: hola mundo
Caracter: o
Aparece 2 veces.

Lo tengo hecho en x86 pero debo pasarlo a MMX y no se como. Adjunto el código en x86 por si sirve de ayuda. Mil gracias de antemano!

section .text
global countchr

countchr:
push ebp
mov ebp, esp
mov edx, [ebp+8]
mov ecx, 0

lop1: mov al,[edx]
test al,al
jz fin
cmp al, [ebp+12]
jne no
add ecx, 1

no: inc edx
jmp lop1

fin: mov eax, ecx
mov esp, ebp
pop ebp
ret

Aqui adjunto el programa en C para leer los parámetros:

#include <stdio.h>
#include <string.h>

int countchr(char *str, char c);

int main(int argc, char *argv[]){

char cad[100];
char car;
int res;

printf("String: ");
fgets(cad,100,stdin);
printf("Character: ");
scanf("%c",&car);

res=countchr(cad,car);
printf("%d\n",res);

return 0;

Etiquetas: ensamblador, mmx
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:13.