기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.

int no = 11이라면...

int offset = (no / 32) << 2;  // offset값을 계산하는데 왜 / 32를 하고 << 2를 하는지...결과는 0이 나옵니다.ㅜ
 u32 mask = 1 << (no % 32); // 왜 % 32를 할까요...ㅜ

안녕하세요.

현재 회사에서 리눅스 디바이스 드라이버를 개발하고 있고, 리눅스 커널 분석에 관심이 많습니다.

잘 부탁드립니다.^^

엮인글 :
http://www.aesop.or.kr/index.php?mid=Board_Community_QandA&document_srl=29484&act=trackback&key=6e2

이제현

2010.03.14 07:32:34
*.40.239.206

<1> / 32는 no가 32 보다 큰가 작은가를 판단하기 위한 조건문으로 이해하세요. 큰 경우에만 시프트가 의미가 있겠죠.

비트 연산으로 따지면, 하위 5개 비트 보다 위에 위치한 비트에 High가 있는 경우에만 연산을 유효하게 만들어 줍니다.


<2> % 32는 no의 32 보다 작은 숫자만 얻기 위한 연산입니다. 마찬가지로 비트 연산을 생각해 보면 하위 5비트만 유효하겠죠.

고도리

2010.03.14 07:42:05
*.140.0.103

32개로 자르는 겁니다.

 

음.....string을 bit 연산하도록 만들때 많이 쓰는 스타일인 듯

List of Articles
번호 제목 글쓴이 날짜sort 조회 수
3328 [Odroid] USB 포트 관련 문의.. [1] just4you 2010-03-11 561
3327 커널과 크로스툴 변경관련.. [2] kjh10101 2010-03-11 497
3326 LMS350 Setting 관련 (Bootloader 관련) [1] 노승수 2010-03-11 582
3325 android 바탕화면뜨지않는현상 [2] 정대현 2010-03-11 1843
3324 안드로이드 부팅후 개인이 만든 실행파일을 스크립트로 실행할려면.. [1] 김영일 2010-03-12 938
3323 파일시스템을 RAMDISK로 설정하려면 [1] 전룡 2010-03-12 564
3322 [Odroid] Android porting for Odroid 문서에서 [3] 이재훈 2010-03-12 738
3321 오드로이드 파워키는 어떤식으로 연결 된건가요? [1] 김영일 2010-03-12 535
3320 S3C2440 부팅로그... 무엇이 잘못된 것일까요?(kernel panic) [6] 당그니 2010-03-12 1210
3319 [odroid] gmodule-2.0 [2] 박선종 2010-03-12 486
3318 [ODROID] MediaPlayer RTSP 테스트 중입니다. [1] 규야 2010-03-12 2969
3317 오드로이드에 실장된 HDMI 포트의 filter의 part number 알려 주... [1] 김성한 2010-03-13 511
3316 [ aESOP S3C6410 보드]에 사용한 LCD(LMS350DF01)에 필요한 B2... [1] 무한도전 2010-03-13 607
» 이 소스 코드 해석 좀... [2] 안드러오니 2010-03-14 502
3314 이클립스에서 오드로이드 및 가상장치가 나타나지 않습니다.. 실행불능... [1] 미동 2010-03-14 621
3313 msm7627 USB ETHERNET 설정이 되지 않습니다. [2] 루크레인 2010-03-15 900
3312 wf-fi 펌웨어 로딩??관련 질문 드립니다. [3] 김정희 2010-03-16 700
3311 Diff -urN Android Kernel and Linux Kernel [2] [春] 2010-03-16 543
3310 안드로이드 화면 전환 속도 문제 없는지요? [1] 회그니 2010-03-16 754
3309 S3C2440 부팅로그..2번째.. 함 봐주세요..부탁드려요.. [1] 당그니 2010-03-16 1061

사용자 로그인