본문 바로가기
뉴렉처 과정 기록 (Backend)/JAVA

03/04 JAVA 비트 논리 연산자

by yeonee3219 2021. 3. 4.

비트연산자를 사용해보자

 

 

 

* 파일 입력 받을 때는 여러가지 예외사항이 발생할 수 있다.

  (FileInputStream 생성 시 빨간 줄 생김)

 

그냥 첫번째 해결방법 누르면 나오는 것.
현준님이 알려준 방법으로 해결.

 

 

 

 

* 파일 위치를 써줄 때, 절대경로보다 상대경로를 사용하는 게 훨씬 바람직.

 

이미지 파일의 절대경로
파일위치를 바꿨다..
이미지 파일의 상대경로

 

 

 

비트맵 구조

가로 4바이트(32비트)

 

 

 

 

두개의 바이트를 (7이라는 바이트와 5 바이트를) 하나로 합침.

 

 

 

 

 

비트 논리 연산자를 이용해서 바이트를 합쳐주는 과정이다.

 

 

 

 

 

컴퓨터가 다루는 기본 단위는 1byte (8bit)

big endion : 고성능 cpu / [ ][ ][ ][b]

little endion : intel, and / [b][ ][ ][ ]

 

 

실제 우리가 사용하는 cpu에 맞게 채우기 위해서는 

거꾸로 b4부터..

 

 

 

거꾸로 했을 때 크기가 제대로 나오지 않음

 

 

 

거꾸로 안했을 때는 또 음수가 나옴.. 크기도 다름..

 

 

 

 

*  그렇다면 옮기기 전 있을 수도 있는 비트를 청소 해주어야 한다 

 0xff

 0x0f

 0x00 

 

 

 

&0x000000ff = &0xff 

 

 

 

이건 진수,비트 ...헷갈려서 캡처

 

 

 

 

 

비트 청소 했는데도 안됨.

왜안되나 했더니..

 

파일사이즈 전 시그니처부분 읽기를 안해줬다.

 

 

 

 

 

시그니처 부분읽기를 해주니 비트 정리를 해주지 않아도 잘 나온다.

 

 

 

 

 

  

결과~~~

 

 

 

 

백지 상태에서 연습해보기.