본문 바로가기

2018/0813

3-1 상수 상수를 표현하는 방법은 int num=1+2; System.out.println(1.2+3.4); 이렇게 사용해서 표현할 수 있습니다. 여기서 상수는 총 네번, 1,2,1.2,3.4 가 쓰였습니다. 상수도 또한 변수처럼 메모리 공간에 저장이 됩니다. 대신 저장된 값의 변경이 불가능합니다. 상수의 특징은 #이름이 없다.#이름이 없으므로 메모리에 저장된 상수의 값을 변경시킬 수 없다. 이렇게 알 수 있습니다. 상수는 선언된 값에 맞는 가장 작은 자료형(short, byte 등)에 맞춰서 저장되지 않을까도 생각이 들수도 있습니다만... 기본적으로 모든 정수형 상수는 int, 실수형 상수는 double형으로 표현, 저장됩니다. 그럼 10000000000 등 int의 범위값에 넘어가거나 12.34처럼 float형.. 2018. 8. 21.
2-4 자료형의 이해 앞서 byte, short, int, long 등의 자료형에 대해 알게 되었습니다. int형은 4바이트의 공간을 갖고, short는 2바이트, long은 8바이트의 공간을 갖는다고 했습니다. 저는 프로그래밍에 대해서 배울때, "모든걸 큰 자료형으로 선언하면 귀찮은것도 없고 편하지 않나? 왜 굳이 int를 쓰고 하지?" 했었습니다. 지금도 하고있지만요. 옛날에는 아주 작고, 한정적인 메모리 공간만을 가지고 프로그램을 만들어야 했으니 자료형의 선택이 매우 중요했지만 지금은 거의 8GB 이상의 메모리가 기본이 되다시피 컴퓨터를 사용하고 있습니다. 메모리 공간만을 생각해보면 그렇지만, 우리가 일반적으로 사용하는 CPU는 int형 연산을 가장 빠르게 처리할 수 있게 설계 되어있습니다. 그렇기 때문에 보통 int로.. 2018. 8. 20.
2-3 실수 표현방식의 이해 2-2에서는 정수 표현 방법에 대해서 봤습니다. 이번엔 실수 표현방식을 볼건데요. 1과 2, 1과 3 등등 정수와 정수 사이에는 1.1, 1.2, 1.11, 1.1111111.. 등등 무한히 많은 실수가 존재합니다. 따라서 이러한 소수점 이하 자리수까지 표현 하기엔 한계가 생기죠. 그래서 실수를 표현하는 방법은 정밀도를 포기하고 표현의 범위를 넓히는 방법으로 정했습니다. 여기선 굉장히 복잡한 수식이 나오는데, 생략하겠습니다. 이전 글에서 실수끼리 연산했을때 3.0000002가 나올거라 예상했으나 3.0000001999999997 라는 숫자가 나왔던 것에 대한 답이 이것입니다. 표현의 범위가 넓어진 대신 정밀도가 낮기 때문에 이러한 결과가 발생하게 됩니다. 2018. 8. 17.
2-2 정수 표현방식의 이해 컴퓨터는 2진수를 사용합니다. 2진수는 0과 1로만 표현하는 방법이죠. 양의 정수를 표현하는 방식은 00011001 이라는 숫자를 보면0 2018. 8. 17.