컴공 일기253
게시글 주소: https://orbi.kr/00070242684
한 번쯤은 생각해 볼 법한 예제라서 가져왔습니다. C를 한 번이라도 배워보셨던 분은 한번 풀어보셔도 괜찮아 보이네요.
int main()
{
unsigned int num1 = -1;
unsigned char num2 = -1;
printf(“%d %d”, num1, num2);
}
정답은 -1 255가 됩니다.
서식지정자 %d의 작동 메커니즘과 부호 비트에 관해 어느 정도 상세히 알아야 풀 수 있는 문제입니다.
unsigned int는 기본적으로 부호비트가 없는 32비트이고 부호화 2의 보수법에 의거해 2진수로 나타내면
num1 = 1111…11((32개)가 됩니다. 다시 말해 실질적으로 num1에 들어가는 값은 -1이 아닙니다.
-1을 부호화 2의 보수법에 의거해 2진수로 나타내면 1111….1(32개)인데, unsigned int라는 형에 의해 마지막 1이 부호비트로 해석되지 않아 2^32-1이 최종적인 값으로 num1에 대입됩니다.
마찬가지로 unsigned char는 8비트이므로 num2 = 111..1(8개) = 255가 되겠지요.
여기까지 생각한다면 결괏값은 2^32-1 255가 되어야 할 것 같지만, 함정이 하나 더 있습니다.
서식지정자 %d의 메카니즘.
%d라는 서식지정자는 32비트 2진수를 10진수(decimal)로 재해석해서 콘솔에 출력하라는 의미입니다.
그런데, 여기서 %d에서는 부호비트를 적용하게 되지요.
즉 1111…1(32개) = -1이 되어 출력됩니다.
그렇다면 8비트짜리는요? 32비트 10진수를 출력해야 하는데.. 24비트가 부족하게 되지요. 그렇다면 형식에 24비트를 채워야 합니다. 어떤 방식으로 채워야 할까요? 기존의 8비트짜리 변수가 음수라면 1을 채우고, 양수라면 0을 채웁니다.
111..1(8개) = 255이고, 이 자체가 양수로 평가되므로 %d 서식지정자에 의해 000…011111111이 num2에 해당하게 됩니다. 마지막 비트에 해당하는 부호비트가 0이므로, 255가 그대로 출력되게 됩니다.
아주 간단한 예제지만, 컴퓨터 구조를 꽤 정확하게 알고 있어야 도출할 수 있는 예제가 되겠군요.
0 XDK (+0)
유익한 글을 읽었다면 작성자에게 XDK를 선물하세요.
-
지금 사문 통계까지 개념 돌렸는데 사문 매칭 문제는 오비탈 느낌이고 통계는...
-
오늘 자율 등원 아님? 2교시쯤 갈랬더니 뭐지
-
기상 6
으아
-
바로자리바꾸러간다 1월부터 바라고 있던 자리다
-
왜 히라가나로 완다호이 적혀있음? 원더랜드의 완다 니까 가타카나여야하는거 아님?
-
의대 사정이 하도 안좋으니까 최상위권들이 치대로 가서 그런가요?
-
약속이 생겨버린
-
학원만 다니다 겨울방학때 처음으로 인강으로 공부하고 있는 현역입니다 모고 성적은...
-
다이어트 종료 5
103일 걸림 18.5kg 감량 비만 → 저체중 끝
-
아 오늘 레전드 가슴하고 수학 하는 날인데..
-
1.화작 기하 한지 세지 하려고 하는데 화작을 언매로 바꾸는게 좋나요? 2.한의대는...
-
ㅈㄱㄴ
-
UNIVERSITY OF SEOUL.님의 장례식이 아닙니다??? 2
ㅅㅂ왜 살아있는건데
-
잇올러들 주목. 2
오늘 자율이라고 안가고 침대에서 밍기적밍기적 거리지 말고 정규시간처럼 공부하자 형은...
-
정병훈T의 승부수였다는데 ㅋㅋ
-
현역때 공통 하나 미적 3개 틀렸고 지금은 확통 세젤쉬 한 바퀴 돈 상태입니다....
-
!!
-
주인 잃은 레어 2개의 경매가 곧 시작됩니다. 서울시립대 이루매"그대, 서울과...
-
안녕히 3
약 4년 전부터 오르비를 시작했습니다 힘들 수험생활을 버티게 해준 고마웠던 친구...
-
전여친만나는꿈꿈 7
근데 난 전여친이 없는데 크아악 존재하지않는기억이
-
멍청하게 선포 했는지
-
과학과 사회의 관계에 대한 견해 - 수특 독서 적용편 주제 통합 03 0
안녕하세요, 디시 수갤·빡갤 등지에서 활동하는 무명의 국어 강사입니다. 오늘은...
-
내 소원 0
대왕 삼색아이스크림 (고깃집애 있는거) 꼭 시켜서 퍼먹어보고싶어요 자취하면 꼭 해야지
-
받는 사람도 잇긴 하겟는데
-
죽겠다.ㅎ
-
ㅇㅂㄱ 0
나왔는데 어제보단 좀 춥네요 다들 따뜻하게 입으십쇼
-
잇올 자율등원일에 7:30부터 등원 가능이라던데진짜임? 2
진짜임? ㅡ아님 그냥 형식적으로만 말하는 거임? 그 전에 등원하면 세콤 울린다고...
-
왜냐면 아니니깐.. 이 아니고 아직도 그냥 방구석에서 머리나 벅벅 긁다가 때 되면...
-
On my bed
-
2025학년도 경찰대 영어 1차 시험 기출문제 30번 한줄해석 0
2025학년도 경찰대 영어 1차 시험 기출문제 30번 해설 ( 선명하게 출력해서...
-
행복하세요
-
평소에 자존심 센 인간들 기분 맞추면서 사는중임 본론부터 말하면 화내니까 돌려돌려...
-
수2 자작문제 1
혹시라도 해설을 원하는 분이 계시면 다음 게시물에 올려보겠습니다!
-
몇시간씩 가스라이팅 후에 휴학 실명투표 시키는거 이거 자체가 위법 아님? 전공의들...
-
이렇게 있을 때 점 Q를 삼각형 PAB에 대한 P-Humpty Point라고...
-
주인 잃은 레어 2개의 경매가 곧 시작됩니다....
-
집에 가야겟다 5
여기서 뭐 더 할게 없네
-
여지껏 정말 멍청하게 살아왔습니다 수많은 실패, 헛짓거리, 열등감, 후회, 분노...
-
계약학과 목표로 할건데 사1과1이랑 사2중에서 뭐가 좋을까요 작수 생지에서 생명은...
-
기차지나간당 6
부지런행
-
이거 ㄱㄴ?? 3
과외하는데 학교 프로젝트 때문에 수업시간을 미뤄야 될거 같아서...주말이고 그...
-
과중 학교 선배들도 생기부 괜찮다고 하는 선배랑 좀 별로라는 선배들끼리 갈려서,,,...
-
난 기억해볼려햇지만 아프지말아요 그저 웃는 모습 보여줘요
-
전자는 돈벌어도 성형못한다하면 뭐고름?
-
ㅋㅋㅋㅋ 어이없어서 말도 안나오네요,, 바이탈 넘쳐서 학생회 내용 절반을...
-
메디컬 문과로 2
작수 화작 확통 생윤 사문 21212인데 화작을 언매로 바꾸지 말고 만점을 향해...
-
매일 저격글이 1
평화로운 오르비입니다
-
네..
이런 공부는 무슨 책으로 어떻게 하면 될까요?
주로 컴퓨터구조 전공 서적이나, C 전공 서적을 참조하시면 공부할 수 있습니다. 추가적으로 여기에 사용되었던 부호화된 2의 보수법이나, 부호비트, 비트연산 같은 경우는 논리회로라는 과목으로도 충분히 커버할 수 있는 내용이지요. 한빛미디어에서 나온 <디지털 논리회로> 책을 한 번 일별해보시는 것도 추천드립니다.
양이 워낙 방대하긴 하지만, 쭉 읽다 보면 컴퓨터라는 게 어떤 방식으로 작동하게 되는지 개략적으로 알 수 있을 겁니다.
감사합니다!!
컴공주님 혹시 그 책 완독하셨나요? 방학때 전공 대비로 공부해보려 하는데, 혹시 읽어보셨다면 후기 적어주신다면 감사하겠습니다
문제가 워낙 방대해서 문제를 다 풀진 않았습니다만, 내용 같은 경우는 완독했습니다. 다름이 아니라, 수업에서 채택한 교재였어서 아무래도 디테일하게 읽을 수밖에 없었죠.
다만, 시험이 아닌 공부적 관점에서는 헷갈리거나 모르는 것들 위주로 발췌독하는 것이 좋을 듯 합니다. 논리회로 특성 상, 컴퓨터 구조와 연관성이 아주 긴밀하기 때문에 컴구에서 회로적 관점에서 헷갈리는 부분이 있을 때 자주 발췌해서 봤죠.