2-3. java 변수, 타입, 데이터 처리, 2의보수법

5824 단어 22/4/1222/4/12

데이터 수집 - 사용자가 화면 입력 ( System.in/ 웹표준 서버와 연동해서 웹브라우저를 통해 ) 키보드로 입력, DB 에서 꺼내온다(SQL 자바쪽에서 만들어서)

데이터 처리 - 데이터 저장(정형 데이터- 데이터 형태에 따라 변수의 타입 설정 float, double..int...)

데이터 저장 - HDD,SDD / RAM(메인메모리 - 여기부터 cpu가 처리 대상임, 데이터 저장 장소) / Register(처리 cpu 안에 있는것 -> 연산후 메인메모리에 저장됨


변수

기본형 변수 - 길이가 정해진다. int 4byte, 값을 넣는다. 변수 타입이 소문자

숫자

  • 정수 : byte -> short -> [int] -> long / int 가 기본형 // long 타입은 1L 영어 L 을 붙여줘야함

    int value = 10; // 10은 리터럴 값이다

value = 20; /값 변환

-실수 : float - [double] // double 이 기본형 // float 가 int 보다 실제로 크다

계산시

0.015 -> 1.5* 10**-2

1). + 저장(부호) 2). -2승 저장 3). 1.5 가수저장

152364.15 -> 1.5236415* 10**5

1). + 2).5승 3). 1.5236415

실수 저장시 기본 double로 저장

-문자 : char - 'A' 숫자 2바이트 -> int 로 넣을 수 있다.

-논리 : boolean - true / false, 1byte 문자 -> true,false 는 1bit 로 충분하지만 저장의 최소단위 가 1byte라 1byte 사용

  • byte,short로 저장시 용량은 적어지 지만 연산하게 되면 자동으로 int 변환되어 byte,short로 선언한 변수는 캐스팅 해줘야함

캐스팅 : 관련있는 형태의 데이터 끼리 형변환 시킬 수 있다.

데이터 손실이 있으면 강제 캐스팅 , 손실 없으면 자동 캐스팅

byte b = (byte) value;

나머지는

참조형 변수 - 길이가 정해져 있지 않다(기본형 변수를 여러개 만들수있다), 정해진 위치의 주소를 넣는다

대문자

public class GarbageValueExample {


public static void main(String[] args) {


//변수 선언 : 타입 변수명 = 값

byte var1 = 125; //-128~127

int var2 = 125;


//정해진 반복횟수가 있을 때 사용

// for(초기값;반복조건;증감값;){}

// i++ = i += 1 = i = i+1

for(int i=0; i<5; i++) {

var1++; // var1 = var1 + 1

var2++;

System.out.println("var1: " + var1 + "\t" + "var2: " + var2);

// 문자열 + 다른 타입 -> 문자열 : 데이터를 이어 붙여서 출력한다. 숫자도 문자열이 된다

// public void println(String x) <-<x에 전달 >문자열 1개 데이터로 만들어 넘겨준다

// \(역슬레쉬) 나오면 뒤에는 특수문자로 활용된다

}

}

}

api 라이브러리사용

System.out.println("var1: " + var1 + "\t" + "var2: " + var2);

코딩 했다면

구동은

// public void println(String x) <- x에 전달 ("var1: " + var1 + "\t" + "var2: " + var2)를 문자열 1개 데이터로 만들어 넘겨준다

만들어져있는 println 메소드를 가져다 쓴것


2진수 계산

1~2^6 = 1,2,4,8,16,32,64,128

맨 앞의 0 은 부호

00000000 - 0

00000001 - 1

00000010 - 2

00000011 - 3

00000100 - 4

00000101 - 5

음수 표현법 - 부호 + 절대값 : 사람 기준 표시, 연산 불가

00000001 - +1

10000001 - -1

5-3 -> +5 + (-3) // -로 부호 변환함

1의 보수법 = 각 항을 더해서 1로 변환, 연산 가능

00000001 - +1

11111110 - -1

00000000 - +0

11111111 - -0

5-3

00000101 - +5

11111100 - -3

1 00000001 -> 올라간숫자를 양수로 1 더함 =2

00000011 - +3

2의 보수법 = 1의 보수구하고 + 1 한것 java에서 사용 //자바 는 1의 보수사용x

byte = -128~127까지로 사용

11111111 - -128 로 사용

00000001 - +1

11111110 - 1의 보수 일때 -1

11111111 = -1(2의보수는 1을 더함)

01111111 = 127

          +1

10000000 = 256인데 byte 는 256 지원 안함

1 은 부호 -> -(마이너스)

// 마이너스는 0부터 올라가면서 숫자가 줄어듬

10000000 = -128 /// -128 +1 -> -127

10000001 = - 127

좋은 웹페이지 즐겨찾기