摘要: 数据对齐又是一个老问题了。 简单的来说,一般考试的内容就是结构体对齐分析。 一句话,整体按照最大的元素铺开。中间能插空就会插空。 struct { int a; char s[4]; long b; } 占据16B struct { int a; long b; char s[4]; } 24B 二 阅读全文
posted @ 2021-11-05 22:49 TheDa 阅读(51) 评论(0) 推荐(0) 编辑
摘要: 目的是不用除法,使用位运算实现除以10运算。 我自己一开始是这样探究的: x/10=x/16+x/32+(x/16)/10 假设f(x)=x/10,那么就有f(x)=(x>>4)+(x>>5)+f(x>>4),但是实际操作的时候,这个递推式不好用,因为无符号数小的时候,右移直接归零了。 除10运算的 阅读全文
posted @ 2021-11-05 22:48 TheDa 阅读(1371) 评论(0) 推荐(0) 编辑
摘要: 实验要求是: bitXor - x^y using only ~ and & 然后代码如下: int bitXor(int x, int y)//使用~和&完成异或操作 { return ~(~x&~y)&~(x&y); } 本人想了一下如何推导,却没有办法很快推导出来,只能用笨方法,方法如下: 阅读全文
posted @ 2021-11-05 00:14 TheDa 阅读(878) 评论(0) 推荐(0) 编辑