ios - 为 NSData iOS 中的每一位设置数据

标签 ios objective-c nsdata

我创建了长度为 2 字节(16 位)的 NSData,我想将前 12 位设置为 (int)120 的二进制值,第 13 位设置为 0 或 1(位),第 14 位设置为 0 或 1(位)第 15 位为 0 或 1(bit)。

    This is what I want to do:
             0000 0111 1000 --> 12 bits as 120 (int)
             1 <-- 13th bit 
             0 <-- 14th bit
             1 <-- 15th bit
             1 <-- 16th bit

预期输出 => 0000 0111 1000 1011:最终二进制并将其转换为 NSData。

我该怎么做?请给我一些建议。谢谢大家。

最佳答案

0000011110001011 位是 0x07 0x8b 字节。

unsigned char a[2] ;
a[0] = 0x07 ;
a[1] = 0x8b ;
NSData * d = [NSData dataWithBytes:a length:2] ;

关于ios - 为 NSData iOS 中的每一位设置数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20772161/

相关文章:

ios - Objective C,base64 png 到 UIImage

objective-c - NSSavePanel - 添加选择菜单

iOS 将 Web 服务数据保存到设备

arrays - 基于 NSData 子集的 Swift NSData 字符串转换

c++ - 将终端的输入/输出重定向到 iOS JB 中的 gui

ios - 如何根据 HTML 内容动态更改 UIWebView 的高度?

javascript - 从 Objective-C 调用 javascript 函数的语法

objective-c - cocoa /界面生成器 : What do I need to subclass to replicate this window?

ios - 核心数据 |自动生成的 String 和 Date 属性是可选的,即使没有在 swift 中标记

cocoa - 将 CLLocationCoordinates2D 存储在 NSMutableArray 中