Algorithm Study/Java

[코드업 자바] # 1059 [기초-비트단위논리연산] 비트단위로 NOT 하여 출력하기

728x90
반응형

코드업 자바

# 1059 [기초-비트단위논리연산] 비트단위로 NOT 하여 출력하기

 

링크 : https://codeup.kr/problem.php?id=1059

 

[기초-비트단위논리연산] 비트단위로 NOT 하여 출력하기(설명)

C언어기초100제v1.2 : @컴퓨터과학사랑, 전국 정보(컴퓨터)교사 커뮤니티/연구회 - 학교 정보(컴퓨터)선생님들과 함께 수업/방과후학습/동아리활동 등을 통해 재미있게 배워보세요.  - 모든 내용

codeup.kr

 

 

풀이

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        System.out.println(~a);
    }
}

 

  • 자바에서 정의되는 숫자들은 2진법 비트형태로 저장되어 있다. 만약 ~(NOT) 연산자를 붙여주게 되면 보수 표현 방법으로 저장된다
    • 보수 표현 방법 : 1101 1001 → 0010 0110 형태로 바뀌는 것

 

※ 비트단위 논리 연산자

  • ~ : bitwise not
  • & : bitwise and
  • | : bitwise or
  • ^ : bitwise xor
  • << : bitwise left shift
  • >> : bitwise right shift