● 자바는 변수를 선언할 때 변수의 이름과 용도를 같이 선언해야 합니다.
ex)
int num1; <- 변수 num1 의 선언. 변수 num1 의 역할은 int 이다.
최초로 변수를 만들 때 어떤 역할을 할지 적어주어야 합니다. (변수의 선언)
int num1; // 변수 num1의 선언
num1 = 10; // 변수 num1 에 10을 저장
unt num2 = 20; // 변수 num2의 선언과 동시에 20으로 초기화
처음 만들어진 변수에 값을 저장하는 것을 변수의 초기화라고 합니다. (변수의 초기화)
초기화 이후에는 값의 대입이라고 하면 됩니다.
int num; // 변수의 선언
num = 10; // 변수의 초기화
num = 20; // 변수에 값 대입

변수에 저장할 데이터가 어떤 유형인지를 알려주는 자료형 범위 입니다.
byte 에서 127까지가 1바이트인 이유는 0의 값이 포함되기 때문입니다.
(기본 자료형 Primirive Data Type= 원시 자료형, 위 외의 자료들은 모두 참조 자료형)
바이트 크기가 다름에 따라서 표현 가능한 범위가 달라집니다.
그럼 위 자료형을 이용해서 변수를 선언하는 간단한 코드를 작성해볼게요.
double 이라는 실수형 함수를 사용해볼게요.
double num1, num2; <-으로 연속해서 변수를 선언할 수 있습니다. (=역할을 부여할 수 있습니다.)
package day11;
public class VariableDecl {
public static void main(String[] args) {
double num1, num2; // 실수형
double result;
num1 = 1.0000001;
num2 = 2.0000001;
result = num1 + num2; // 실수를 표현할 때 프로그래밍 언어에서는 조금씩의 오차가 있다.
System.out.println(result);
}
}
결과는 이렇게 출력 됩니다.

프로그래밍 언어에서는 실수를 표현할 때 조금씩의 오차가 있으므로 해당 값이 출력됩니다.
저 값이 나왔다면 알맞게 입력이 된 것입니다.
이렇게 변수를 선언할 때 파이썬과 마찬가지로 제약사항이 있습니다.
1. 자바는 대소문자를 구분한다.
2. 변수의 이름은 숫자로 시작할 수 없다.
3. $와 _ 이외의 특수문자는 사용할 수 없다.
4. 키워드는 변수의 이름으로 사용할 수 없다.
● 그럼 이제 위 자료형 데이터 표에 따라 정수의 표현을 해볼게요.
컴퓨터가 표현하는 모든 데이터들은 결국 숫자입니다.
컴퓨터를 통해서 처리 되어지는 데이터들은 모두 1과 0으로 조합이 되어서 인코딩이 됩니다.
(네모 한 칸이 비트bite)

비트란 컴퓨터에서 가장 작은 단위 입니다.
1바이트byte = 8비트bite
여러 개의 데이터를 붙였을 때 맨 왼쪽에 있는 비트를 부호비트라고 합니다.
위 그림에서 8칸의 비트로 1바이트를 표현하게 되면 양수입니다.
양수와 음수를 나누는 1비트를 제외하면 모두 7칸이 남습니다.
총 경우의 수는 2의 7승 (0과 1의 2의 값이 7개 이므로) 최댓값은 128입니다.
즉 이것은 2진수를 이해해야 가능합니다.
2진수란 0과 1로만 수를 표현하는 것입니다.
2진수에서는 10진수와 다른 방법으로 수를 표현합니다.
0과 1만 가지고 자릿수를 올려서 표현합니다.
0
1 (0과 1까지는 같습니다.)
10 (2라는 기호가 없으므로 자릿수를 올립니다.)
11 (3)
100 (4)
101 (5)
그러므로 바이트 단위에서는 부호 기호 하나를 빼면 2진수로 표현할 수 있는 최대의 값은 1111111 <- 입니다. (2의 7승)
여기까지가 양의 정수를 나타내는 것이라면 음의 정수는 다르게 표현합니다.
부호 비트를 1로 바꾼다고 해서 음의 표현이 정상적으로 되지는 않습니다.
조금 전에 표시한 +25에서 -25를 해야하면 0이 되어야 하는데 그 값이 나오지 않습니다.
양의 25를 기준으로 더했을 때 0니 나오는 수가 음의 25가 되는 것입니다.

음의 정수를 표시할 때의 과정을 보겠습니다.
양의 정수의 이진수 표현에 2의 보수를 취한 결과를 음의 정수로 표현합니다.
(보수란 뒤집은 값을 말합니다. )
1바이트
0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
= + 1 (양의 1수)
1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 |
우선 기존의 값을 보수로 취합니다. (뒤집습니다.)
그 다음 1의 값을 더해줍니다. (맨 오른쪽 자리값)
+ 1비트
이렇게 하면 모든 값이 0이 되고, 올림수가 되는 1은 버려지기 때문에 총 값은 1이 됩니다.

변수를 선언할 때 지정했던 자료형보다 큰 바이트의 값은 저장할 수 없습니다.
고로 값의 표현 방법에 대한 테이블을 익혀두는 것이 좋습니다.

'자바 > 자바 입문 공부일지' 카테고리의 다른 글
자바 기초 공부 일지 6. 기본 연산자 (0) | 2022.10.25 |
---|---|
자바 기초 공부 일지 5. 상수 (리터럴), 자료형 변환 (0) | 2022.10.24 |
자바 기초 공부 일지 4. 자료형 (정수형, 문자형) (258) | 2022.10.24 |
자바 기초 공부 일지 2. 자바의 간단 소개, 이클립스Eclipse 설치 (0) | 2022.10.24 |
자바 기초 공부 일지 1. 자바 JDK 설치와 환경 변수 설정, 자바와 파이썬의 차이점 (0) | 2022.10.24 |