예를 들면 512B로 aligned 인지 확인


int check_if_aligned(unsigned long addr)

{

const unsigned long align_size = 512;

return (addr & (align_size - 1)) ? -1 : 0;                //0: aligned, -1: not aligned

}


512보다 작은 크기의 bit가 단 하나라도 & 연산으로 걸리는게 있으면 aligned가 아님

무조건 512의 배수만 &연산이 false뜸


잘 이해가 안 가면 계산기 놓고 해보면 아하~!

Posted by 쵸코케키

블로그 이미지
chocokeki
쵸코케키

공지사항

Yesterday
Today
Total

달력

 « |  » 2024.4
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30

최근에 올라온 글

최근에 달린 댓글

글 보관함