게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
비트연산에 관해 질문있습니다
게시물ID : programmer_13853짧은주소 복사하기
작성자 : 찌랄발광
추천 : 0
조회수 : 349회
댓글수 : 10개
등록시간 : 2015/10/14 01:26:09

비트단위연산문제 를 10진수8또는 16진수와 and not을 알면 시험문제 한문제를 맞출수 있는데요

네이버에  not 연산을 검색해보니

 #include <stdio.h>

int main(void)

{

        int num1 = 0;

        int num2 = ~num1;

        printf("NOT 연산의 결과: %d  \n", num2);

        return 0;

}

이게나오더라구요 그래서 해봣는데요 
0넣으면 -1이구요 1넣으면 -2 이렇게 돼던데요
2의보수를 써서 그렇다는데요 2의보수가 뭔지 알구있구요 그럼 걍 not 연산이란 -붙히고 1빼주면 돼는건가요 ???

#include<stdio.h>
int main(void)
{
int num1=15; //00000000 00000000 00000000 00001111
int num2=20; //00000000 00000000 00000000 00010100
int num3=num1 &num2; // num1과 num2의 비트단위 &연산

printf("AND 연산의 결과: %d \n",num3);
return 0;
}

실행결과  AND연산의 결과 :4

그리고 여기서  num1=0x** num2=0x**
이라하면  num1,2의 숫자를 10진수로 바꾸고   00000000 00000000 00000000 00001111요런형식으로 해서  둘다1인거를 읽어주면 돼는거맞죠?




전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호