当前位置: 首页 > news >正文

低价网站建设费用预算可以做免费广告的网站

低价网站建设费用预算,可以做免费广告的网站,搜集素材的网站,网站页面尺寸目录 数据存储 1,二进制存储方式(补码,反码,源码) 2,指针类型 3,大端,小段判断 1,二进制存储方式(补码,反码,源码) 我…

目录

数据存储 

1,二进制存储方式(补码,反码,源码)

2,指针类型

3,大端,小段判断


1,二进制存储方式(补码,反码,源码)

        我们向计算机输入的数据(数字,字符串等)都是怎样存储的呢?

        我们输入的数据计算机将这些数据转化成二进制形式进行存储

        二进制:就是0,1 组成的序列 下面以代码的形式进行展示

//int main()
//{
//	int a = 20;
//	//
//	//00000000000000000000000000010100 - 原码
//	//00000000000000000000000000010100 - 反码
//	//00000000000000000000000000010100 - 补码
//	//00000014
//
//	int b = -10;
//	//
//	//10000000000000000000000000001010 - -10的原码
//	//11111111111111111111111111110101 - -10的反码
//	//11111111111111111111111111110110 - -10的补码
//	//FFFFFFF6
//	//内存中存储的都是二进制数据
//	//
//	return 0;
//}

由上面代码可以看出 对于正整数而言 其 源码,反码,补码 都相同

然而 ,对于复数 它的源码,反码,补码 是不同的

原码 按位取反 得到 反码 反码 加一 得到 补码  

补码 减一  得到 反码 反码 按位取反 得到 原码 

计算机存储的是补码 也是用补码进行计算的 

如:1+(-1)= 0

//int main()
//{
//	1 - 1;
//	1 + (-1);
//	//使用原码计算
//	//00000000000000000000000000000001
//	//10000000000000000000000000000001
//	//10000000000000000000000000000010
//	//-2
//	//00000000000000000000000000000001
//	//10000000000000000000000000000001
//	//11111111111111111111111111111110
//	//11111111111111111111111111111111 -1的补码
//	//00000000000000000000000000000001
//	//11111111111111111111111111111111
//	//00000000000000000000000000000000
//	//
//	return 0;
//}

2,指针类型

int main()
{int a = 10;int* p = &a;retuen 0;
}

 a就是一个数据 “&” 取地址操作符 (地址也是二进制位 也有十六进制 他们可以相互转化)

指针类型(管理指针可以向后访问多少个字节)

char*  1个字节  int*  4个字节 

访问几个字节 实则就是 (char int short 等的大小)

 从上图中知道 a的地址是0x012FFE00 十六进制 同时后面的 0a 00 00 00 是存储的数据 10 十六进制  由此可以得出 int* 管理4个字节 

 指针类型 决定 他能访问多少字节 (一个字节8个比特位)

3,大端 小端

字节的高位还是低位怎么判断 10 的十六进制原码 反码 补码相同 用补码存储 00 00 00 0a 从左向右是 16^7 16^6...16^1 16^0 次方不断降低 那么位次也不端降低

 如何用代码去验证计算机是大端还是小端 

 通过上图可知 既然整形 管理四个字节 而第一个字节是 0a 也就是10

那么只要访问它的第一个字节 看他是不是10 就可以验证 具体代码 如下

//int main()
//{
//	int a = 1;
//	char*p = (char*)&a;//int*
//	if (*p == 1)
//		printf("小端\n");
//	else
//		printf("大端\n");
//
//	return 0;
//}

强制类型(char*)转换 也可以去掉 因为地址的大小是相同的 4/8个字节 取决于编译器 

所以char* 可以存储int* 

那么以上就是我介绍的内容 如有错误请指出 会尽快改正~

http://www.yayakq.cn/news/402919/

相关文章:

  • c mvc 网站开发网页设计模板代码免费
  • 专门做app网站织梦高端大气网站模板
  • ai特效字体网站网页设计网站设计哪个好
  • 北京建设集团网站云南省建设培训中心网站
  • wordpress新建文章页面福田网站建设公司乐云seo
  • 大型做网站的公司公司注册需要准备哪些资料
  • 天津做网站的公司武冈市住房和城乡建设局网站
  • 做网站多钱门户网站建设专业
  • 苏州规划建设局网站外包网站该怎么做帐
  • 肥乡网站建设健身网站开发过程中遇到的麻烦
  • 网站开发合同存在的缺陷网站布局结构主要分为
  • 网站评估怎么做做只在自己电脑上的网站
  • 海外直购网站建设方案书范文延安怎么做网络推广
  • 网站开发技术架构郑州一建集团公司官网
  • wordpress the title适合seo优化的网站
  • 大庆网站建设黑icp备1900百度站长工具有哪些
  • 网站开发都需要什么软件国外的哪个网站可以做跳转
  • 鹤壁市建设工程交易中心网站wordpress自定义登录界面
  • 首钢建设公司网站营销型网站案例易网拓
  • 做网站用tomcatwordpress get option
  • 广平网站建设网站首图怎么做
  • 网站建设网站建设的网络湟源县wap网站建设公司
  • 域名 空间 网站甘肃兰州地震最新消息
  • 上海个人医疗网站备案表网站设计ai
  • 品牌网站案例网站制作电话多少钱
  • php网站建设案例教程建设银行官网网站
  • 门户网站程序网站主动服务方案
  • 网站建设和管理情况自查报告电子商务网站建设需要的语言及特点6
  • 网站流量怎么变现呢最专业的房地产网站建设
  • 网站建设哪家便wordpress最近评论