Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- + (NSString *)getBitStringForInt:(int)value {
- NSString *bits = @"";
- for(int i = 0; i < 8; i ++) {
- bits = [NSString stringWithFormat:@"%i%@", value & (1 << i) ? 1 : 0, bits];
- }
- return bits;
- }
- NSString *binaryRepresentation(int value)
- {
- long nibbleCount = sizeof(value) * 2;
- NSMutableString *bitString = [NSMutableString stringWithCapacity:nibbleCount * 5];
- for (int index = 4 * nibbleCount - 1; index >= 0; index--)
- {
- [bitString appendFormat:@"%i", value & (1 << index) ? 1 : 0];
- if (index % 4 == 0)
- {
- [bitString appendString:@" "];
- }
- }
- return bitString;
- }
- NSString *str = [ [NSString alloc] initWithBytes:barr length:sizeof(barr) encoding:NSUTF8StringEncoding]];
- @interface NSString (BinaryStringRepresentation)
- + (NSString *)binaryStringRepresentationOfInt:(long)value;
- + (NSString *)binaryStringRepresentationOfInt:(long)value numberOfDigits:(unsigned int)length chunkLength:(unsigned int)chunkLength;
- @end
- @implementation NSString (BinaryStringRepresentation)
- + (NSString *)binaryStringRepresentationOfInt:(long)value
- {
- const unsigned int chunkLength = 4;
- unsigned int numberOfDigits = 8;
- return [self binaryStringRepresentationOfInt:value numberOfDigits:numberOfDigits chunkLength:4];
- }
- + (NSString *)binaryStringRepresentationOfInt:(long)value numberOfDigits:(unsigned int)length chunkLength:(unsigned int)chunkLength
- {
- NSMutableString *string = [NSMutableString new];
- for(int i = 0; i < length; i ++) {
- NSString *divider = i % chunkLength == chunkLength-1 ? @" " : @"";
- NSString *part = [NSString stringWithFormat:@"%@%i", divider, value & (1 << i) ? 1 : 0];
- [string insertString:part atIndex:0];
- }
- return string;
- }
- @end
- NSLog(@"%@", [NSString binaryStringRepresentationOfInt:0]);
- NSLog(@"%@", [NSString binaryStringRepresentationOfInt:1]);
- NSLog(@"%@", [NSString binaryStringRepresentationOfInt:2]);
- NSLog(@"%@", [NSString binaryStringRepresentationOfInt:3]);
- NSLog(@"%@", [NSString binaryStringRepresentationOfInt:7]);
- NSLog(@"%@", [NSString binaryStringRepresentationOfInt:16]);
- 0000 0000
- 0000 0001
- 0000 0010
- 0000 0011
- 0000 0111
- 0001 0000
- -(NSString *)toBinary:(NSInteger)input
- {
- if (input == 1 || input == 0) {
- return [NSString stringWithFormat:@"%.8d", input];
- }
- else
- {
- NSString * myString = [NSString stringWithFormat:@"%@%d", [self toBinary:input / 2], input % 2];
- NSRange stringRange = {[myString length] - 8,8};
- NSString *shortString = [myString substringWithRange:stringRange];
- return shortString;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement