• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

연습문제에는 없지만 궁금해서 여쭤봅니다!

21.04.14 12:15 작성 조회수 156

0

안녕하십니까.

평소처럼 듣고 있었는데 마지막 문제를 풀고 나니 문제와는 상관없는 쓸데없는 생각이 들었습니다.

1. 1010 0010(2) 의 경우 unsigned일 때 162가 되고, 이를 signed 형으로 표현하고자 한다면 단순히 더 큰 byte의 자료형을 사용하면 되는 것입니까?

2. 그렇다면 2byte signed를 사용한다는 가정하에 이를 0000 0000 1010 0010(2) 으로 작성하는 것이 옳은 표현 방법인지도 궁금합니다.

당연히 162를 표현하는 데에 있어서는 1byte unsigned를 활용하는 것이 합리적이라고 생각합니다.

그러나 실제 사용하는 int 자료형의 경우 이미 4byte를 차지하고, signed와 unsigned 양쪽 모두 엄청나게 큰 수의 연산에서 2배 정도의 차이는 별 의미가 없는 범위 차이라는 생각이 들었습니다.

이러한 경우에도 마찬가지로 단순히 더 많은 byte할당으로만 극복을 하는 것이 가장 직관적이고 손쉬운 해결방안인지 1번 질문을 통해 어렴풋이 알고 싶었습니다.

답변 기다리겠습니다. 감사합니다.

답변 2

·

답변을 작성해보세요.

0

alduk7797님의 프로필

alduk7797

질문자

2021.04.14

답변 감사합니다. 예습한다는 마음으로 말씀하신 개념의 자료들을 열심히 읽어보겠습니다.

좋은 수업을 인터넷으로 들을 수 있게 해주신 점 항상 감사하고 있습니다.

오늘도 좋은 하루 되시길 바랍니다.

0

안녕하세요? 좋은 질문입니다. 뒤에 나올텐데 최적화를 위해서 다양한 크기의 정수형(int8, int16, int 32, int64) 이나 부동소수점형을 사용하기도 합니다. 부동소수점형에 대해서는 single precision이나 half precision 등을 검색해보시면 다양한 응용 사례들을 찾아보실 수 있습니다.