2011. 7. 26. 09:57

2진수->10진수, 10진수->2진수 함수


이진수를 십진수로 변환하는 함수
문자열로 된 이진수 스트링을 받아서 숫자로 돌려줌
어디선가 줒어온 소스 변경 -_-);

+(NSInteger)Bin2Dec:(NSString *)strBin {
 unichar aChar;
 int value = 0;
 int index;
 for (index = 0; index<[strBin length]; index++)
 {
  aChar = [strBin characterAtIndex: index];
  if (aChar == '1')
   value += 1;
  if (index+1 < [strBin length])
   value = value<<1;
 }
 return value;
}


십진수를 이진수로 변환하는 함수
숫자로 된 십진수를 받아서 이진수모양의 스트링으로 변경
아래쪽에 리턴이 없어서 뭔가 경고가 나오긴 하는데 괜찮겠지 뭐;; ( -_-);

+(NSString *)Dec2Bin:(NSInteger)iDec {
 if (iDec == 1 || iDec == 0)
  return [NSString stringWithFormat:@"%d", iDec];

 [NSString stringWithFormat:@"%@%d", [self Dec2Bin:iDec / 2], iDec % 2];
}