2의보수 구하는거 질문이요..
밤
2의 보수를 구하는문제인데 마지자리에 1을더하는게 어렵네요..
해결책좀 알려주시면 감사하겠습니다.
#includestdio.h
int main(void)
{
int a, b, c, d, e, f, g, h, i, j;
printf(2자리의 음의정수를 입력하세요 : );
scanf(%d, &a);
b=(-1*a);
c=b%2;
d=b/2%2;
e=b/2/2%2;
f=b/2/2/2%2;
g=b/2/2/2/2%2;
h=b/2/2/2/2/2%2;
i=b/2/2/2/2/2/2%2;
j=1;
c=(c==0)? 1:
(c==1)? 0:1;
d=(d==0)? 1:
(d==1)? 0:1;
e=(e==0)? 1:
(e==1)? 0:1;
f=(f==0)? 1:
(f==1)? 0:1;
g=(g==0)? 1:
(g==1)? 0:1;
h=(h==0)? 1:
(h==1)? 0:1;
i=(i==0)? 1:
(i==1)? 0:1;
printf(%d%d%d%d%d%d%d%d\n,j,i,h,g,f,e,d,c);
return 0;
}질문 내용 :
2의보수를 구할때 마지막자리에 1을더하는것을 풀어주세요.
-
이뻐
참고로 2의 보수는 -1을 곱하면 이미 2의 보수입니다.
2의 보수는 1의 보수에 1을 더한 값입니다.
1의 보수는 각 비트를 전부 반대로 한 것입니다. 0이면 1로, 1이면 0으로요.
다시 말하면,
각 비트를 전부 반대로 해서 1의 보수를 구한 다음에
여기에 1을 더하면 2의 보수가 되는데, 이 값은 -1을 곱한 것과 같게 된다는 뜻입니다. -
라라
for 문 쓰면 안 되고 if, 문도 쓰면 안 되죠? 삼항연산자만 가능하죠?
그럼 배열도 사용을 못 합니까?
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2698184 | 간단한 C언어 인데 .. | 붕붕 | 2025-06-14 |
2698120 | -연산자 가 먼지 좀 알려주세요 (1) | 낮선검객 | 2025-06-14 |
2698091 | 길찾기문제 질문이요! | 노을빛 | 2025-06-13 |
2698060 | while 문에 대한 질문입니다. (9) | 물고기자리 | 2025-06-13 |
2698012 | 2~9가아닌수 | 아놀드 | 2025-06-13 |
2697980 | for에 gets함수를 넣으니까 왜 반복이 안되죠 ㅜ (2) | 펴라 | 2025-06-12 |
2697952 | 2차배열과 함수문의^^; | VanilLa | 2025-06-12 |
2697924 | 다차원 배열 질문있습니다 | 두동 | 2025-06-12 |
2697893 | 정올 :: 기초다지기 a9007 배열7 (문제가 이상함 -_-) | 흰두루 | 2025-06-12 |
2697862 | Unable......... 지정된 파일을 찾을 수 없습니다!! (1) | Creator | 2025-06-11 |
2697761 | 그러니까여제말은... (2) | 새론 | 2025-06-10 |
2697737 | 정올 문제좀 풀어보신분~ | 레오 | 2025-06-10 |
2697709 | rand함수 질문좀요! (6) | 가막새 | 2025-06-10 |
2697683 | C언어 변수뒤 표시가 이해안되는게 있습니다. | 소미 | 2025-06-10 |
2697660 | 껍데기딜 만들고 난후 어느핫키 누르면 코드검색이라도 뜨고 그다음 무반응 해결좀 (2) | 움찬 | 2025-06-09 |
2697634 | c언어로 감성사전 만들기! (1) | 도란도란 | 2025-06-09 |
2697605 | 이 함수좀... | agine | 2025-06-09 |
2697574 | 배열 기본적인질문 (3) | 민트향 | 2025-06-09 |
2697549 | 배열 초기화 (4) | 나리 | 2025-06-08 |
2697465 | 수다님...^^ (2) | 가론 | 2025-06-08 |