2012-03-03 5 views
-2

Я хочу преобразовать NSString в 6-битный двоичный код.Преобразование NSString в 6-битное двоичное представление

Для примера:

Входной сигнал:

NSString = @"A"; 

Выход:

010001 
+1

В двоичном 010001 будет эквивалентно 17 в десятичной системе. Что такое сопоставление значений символов, которые вы используете? Это стандартная конвенция или ваше собственное представление? Что это? – Ravin

+0

фактически .. вывод должен быть в 6 бит двоичном для любого символа. это просто пример. –

ответ

3
-(void)hexadecimal_change:(NSString *)string{ 
NSLog(@"hexa"); 

NSString *hex = string; 
NSUInteger hexAsInt; 
[[NSScanner scannerWithString:hex] scanHexInt:&hexAsInt]; 
NSString *binary = [NSString stringWithFormat:@"%@",[self toBinary:hexAsInt]]; 
NSLog(@"%@",binary); 

long v = strtol([binary1 UTF8String], NULL, 2); 
NSString *dec=[NSString stringWithFormat:@"%ld",v]; 
NSLog(@"%@",dec); 



} 



-(NSString *)toBinary:(NSUInteger)input{ 
    if (input == 1 || input == 0) 
     return [NSString stringWithFormat:@"%u", input]; 
    return [NSString stringWithFormat:@"%@%u", [self toBinary:input/2], input % 2]; 
} 
+0

Привет .. Думает .. Он работает правильно, но для строки «А» этот метод печатает двоичный код как «1011», который не является 6-битным двоичным. –

Смежные вопросы