| [ CnUnix ] in KIDS 글 쓴 이(By): Sue (eXponent) 날 짜 (Date): 2003년 4월 15일 화요일 오후 12시 25분 12초 제 목(Title): Re: [Q]8개의 값을 가장 빠르게 비교하는 � 더 빠를지 어떨지는 모르겠지만 ... int compare8array( char a[], char b[]) { unsigned long i,j ; i = (unsigned long) *( (unsigned long *) &a[0] ) - (unsigned long) *( (unsigned long *) &b[0] ) ; j = (unsigned long) *( (unsigned long *) &a[4] ) - (unsigned long) *( (unsigned long *) &b[4] ) ; if( (i | j) & 0x80808080) return 1; return 0; } -------------- overflow가 일어나면 곤란하겠군요. --; Bit연산을 실수로 Bool연산으로 써버렸었네요. 수정했으니 착오없으시길. MAKE_EVEN_PARITY: mov r24, r25; swap r24; eor r25, r24; mov r24, r25; lsl r24; lsl r24; eor r25, r24; mov r24, r25; lsl r24; eor r25, r24; rol r25; sbc r25, r25; RET |