《编程范式》学习笔记

(一)编程范式
(1)八位能表示最大的数是多少?
为255,最多能表示256个数(包括0),2^x=2^0+2^1+2^2+2^3+…………+2^(x-1)+1

(2)二进制计算:负整数与正整数相加的结果0时,是如何进行二进制运算的?
以short类型(2字节)为例,00000000 00001111 与10000000 00001111相加,对后者取反加1得到11111111 11110001,相加便得到00000000 00000000。-1的二进制表示是个例外,以short为例,为11111111 11111111,因为1的表示为0000 0001,相加正好为0。

(3)不同数据类型之间的赋值
字节数小的赋值给字节数大的,例char赋值给short,00001111转化为short类型,结果为00000000 00001111。字节数大的赋值给字节数小的,例01010000 00001111转化为char类型,则舍弃多余的字节得到00001111,在这里有个误区,例A类型最大能表示的值为100,现在想要将值为123的B类型转化为A类型,不能想当然的认为转换后为100。另外由于-1的char表示为1111 1111,若要将其转化为short类型,需要进行符号扩展,从而变成11111111 11111111。

(4)浮点数的二进制是如何表示的,以float为例?
数学公式为 (符号位)1.xxxx*2^(exp-127) exp为八位无符号整型,范围为-255~255
[符号位][八位无符号整型,即exp][23位表示小数(2^-x),即.xxxx]

(5)强制类型转换(简单讲讲)
float j=4.0;
int i=(int )&j;
此时j的各位值都不会变,而i会照搬其各位的值,当然,获得的值不是4。
float j=4.0;
short i=(short )&j;
此时short类型只有2个字节,因此只将float的前两个字节的数照搬过来。
(二)C语言
(1)struct

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值