본문 바로가기

논리 연산자2

[연산자] 비트 논리/이동 연산자, 대입/삼항 연산자, 연산의 우선순위 3.8 비트 논리 연산자 비트 논리 연산은 소형 임베디드 장치의 C 프로그램에서 외부 서버의 자바 프로그램으로 데이터를 전달한다고 가정하자. C 언어에는 unit8_t 타입이 있는데, 이 타입은 1byte 크기를 가지면서 0~255 값의 범위를 가진다. C 프로그램이 unit8_t 타입 136을 2 진수로 보내면, 자바는 2진수를 -120으로 읽게 된다. 그 이유는 자바는 최상위 비트가 1이면 음수로 인식하기 때문이다. -120을 . C 프로그램이 보낸 136으로 복원하고 싶다면 자바에서 Byte.toUnsignedInt()코드를 사용한다. 비트 논리 연산자는 bit 단위로 논리 연산을 수행한다. 0과 1이 피연산자가 되므로 2진수 0과 1로 저장되는 정수 타입(byte, short, int, long).. 2023. 1. 14.
[연산자] 정확한 계산, NaN과 Infinity, 비교 연산자, 논리 연산자 3.4 정확한 계산은 정수 연산으로 산술 연산을 정확하게 계산하고 싶다면 실수 타입을 사용하지 않는 것이 좋다 public class Main { public static void main(String[] args) { int apple = 1; double pieceUnit = 0.1; int number = 7; double result = apple - number*pieceUnit; System.out.println("사과 1개에서 남은 양: " + result); } } //출력 : 사과 1개에서 남은 양 : 0.2999999999999999 출력된 결과를 보면 result 변수의 값은 정확히 0.3이 되지 않는다. 부동 소수점 방식을 사용하는 실수 타입에서 흔히 일어난다. 그렇기 때문에 정확한.. 2023. 1. 14.