c·c++/c 프로그래밍

C언어에서 음수가 2의 보수를 사용하고 있음을 확인

바로이순간 2012. 3. 17. 13:17

#include <stdio.h>

int main() {

  int x, y;


  printf("number: ");

  scanf("%d", &x); // 원하는 수를 입력합니다.


  y=~x; // 1의 보수 입니다. 비트 역전을 하였습니다.

  printf("x=%d y=%d x=0x%p y=0x%p\n", x, y, x, y);


  y=y+1; // 1의 보수에 1을 더했습니다. 2의 보수입니다.

  printf("x=%d y=%d x=0x%p y=0x%p\n", x, y, x, y);


  return 0;

}