컴퓨터 엑셀 워드 포토숍 구글어스 WINDOWS JAVASCRIPT JAVA C++

 
Previous Post 디렉토리 복사 이동, 폴더 카피 방법; 윈도우 탐색기로; Windows Explorer F...CSS 끄기, IE와 파이어폭스에서 스타일 시트 해제 방법; Style Sheet OffC언어 VC] 파일 속성; 읽기 전용 여부 판단 함수; is File Readonly?정규식] 줄바꿈 문자(개행문자; 엔터 키) 매치; CR-LF Enter Key Match ...Perl/펄 정규식] 줄바꿈 문자 제거, 개행 문자 삭제; Text File Remove ...Java/자바] 피보나치 수열 구하기; Fibonacci Sequence; 피보나치 수(F...C언어] 피보나치 수열 구하기; Fibonacci Sequence; 피보나치 수(Fibon...Python/파이썬] 피보나치 수열 구하기; Fibonacci Sequence; 피보나치 ...Perl/펄] 피보나치 수열 구하기; Fibonacci Sequence; 피보나치 수(Fi...Perl/펄] sprintf 함수 사용 법; printf 출력을, 문자열로 저장; Outp...

C언어] -1 (마이너스 1) 을, 16진수 헥사(Hex)로 표현하면?

Saturday, February 03, 2007

-1 을 16진수로 바꾸면, 자료형의 종류에 따라, FF 나 FFFFFFFF 등의 값을 가지게 됩니다.

윈도우 계산기에서는 FF 로 나오지만, C의 32비트 정수(int)에서는 FFFFFFFF 라는 값이 나옵니다.

"32비트 정수(int)"에서의 -1과, "부호 없는, 32비트 정수(unsigned int)"에서의 4294967295 는, 십육진수인 FFFFFFFF 로 똑같이 표현됩니다.

unsigned int 는 음수를 표현할 수 없고, 그 대신 음수를 표현할 메모리를 양수 쪽으로 몰아주어서, 숫자 표현 범위를 플러스 방향으로 2배 확장시킨 것이기 때문입니다.

#include <stdio.h>

int main(void) {

  int i;
  unsigned int ui;


  i = -1;
  printf("%X\n", i);
  // 출력 결과: FFFFFFFF


  i = -2;
  printf("%X\n", i);
  // 출력 결과: FFFFFFFE




  ui = 4294967295; // unsigned int의 최대값
  printf("%X\n", ui);
  // 출력 결과: FFFFFFFF




  i = 2147483647; // int 의 최대값
  printf("%X\n", i);
  // 출력 결과: 7FFFFFFF


  return 0;
}


참고: ▶▶ C언어] 정수 실수 종류(자료형;데이터형), 최소값 최대값; char int float, Data Type Ranges

☞ C/C++ (VC++)

0 Comments:

Post a Comment

<< Home RSS 2.0 feed

구글 Google 에서 제공하는 무료 블로그 서비스인 블로거 Blogger 의 인터넷 주소는 www.blogger.com 입니다. Blogger 에 블로그를 만들면, blogspot.com 이라는 주소에 블로그가 생성됩니다.
블로그를 직접 방문하지 않고도 최신 게시물을 구독하려면 RSS 2.0 feed 주소를 리더기에 등록하시면 됩니다.
Categories
Previous Posts
Monthly Archives
Top