如何确定地址是否是字对齐的
答
简短的回答是肯定的。但是你必须定义每个字的字节数。一些体系结构称两个字节为一个字,四个字节为双字。无论如何,你只是在心里计算addr%word_size
或addr&(word_size - 1)
,看看它是否为零。当地址是十六进制的时候,它是微不足道的:只要看最右边的数字,看它是否可以被字大小整除。
对于4字节的字大小,示例的第二个和第三个地址未对齐。第二个是2,第三个是7,两个都不能被4整除。对于2字节的字大小,只有第三个地址是不对齐的。
这是功课吗?你机器的字数是多少?我可以。 – JoshD 2010-10-13 10:16:15
可以被机器字大小整除吗? – 2010-10-13 10:16:27
对于N的字大小,地址需要是N的倍数。*提示*:对于N的大多数常见值,您只需查看地址的最后一位。 – 2010-10-13 10:19:13