선생님 안녕하세요! 수업 중 강의를 듣다가 보수에 대한 이해가 되지 않아 질문드립니다. 보수란 보충해주는 수 라고 알고있습니다. 강의에서 1의 보수는 어떤 수에 대해서 더해서 1 이 되는 수라고 말씀하셨고 1의 보수를 구하는 예시로 2진수 1100에 대한 1의 보수를 구하는 방법으로 NOT 연산을 하여 0011을 만들 수 있었습니다. 그럼 1100에 대한 1의 보수가 0011이라고 이해했습니다. 즉 1100 + 0011을 하면 10진수 1 또는 2진수 0001 이 나와야한다고 이해했습니다. 그러나 실상은 2진수 1111 로 10진수로는 15 가 되어버립니다. 분명 1의 보수를 구한거면 더해서 1되는 수라고 말씀하셨는데 15가 계산이 되는데 제가 어느 부분에 대한 개념을 못잡고 있는걸까요?
19:28 문제 vegetables = {"carrot", "broccoli", "spinach", "carrot", "lettuce"} set 형태는 중복을 불가하지 않나요? carrot이라는 값이 이미 2개 존재하는 모순이 생깁니다. 아니면 어떤 것이 중복 불가한가요? 제가 무엇을 잘못 알고 있나요?
계속 그리면서 이해하다가 딜레마에 빠져 질문드립니다 .. 새 노드 추가할때의 그림을 그려보며 이해중이였는데, else { pNewNode->pNext = g_pHeadNode; g_pHeadNode = pNewNode; } 이 코드는 이미 헤드노드가 가리키는 '원래노드'가 따로 있는건데 그렇다면 pNewNode의 pNext엔 헤드노드 주소값을 넣으면 pNewNode는 AddNewNode에서 초기화된 각자의 멤버값을 가지면서 pNext를 따라가면 헤드노드가 나오게 되고, 그 헤드노드의 pNext를 따라가면 '원래노드'가 나오게 되는데 그 상태로 g_pHeadNode = pNewNode; 를 수행하게 되면 헤드노드에 pNewNode값이 오버라이트되게 되는건데 그럼 이 상황에선 기존헤드노드에 뉴노드멤버들의 값들과 pNext엔 헤드노드의 주소값, 이걸 따라가면 뉴노드멤버들의 값들과 pNext엔 헤드노드가 가리켰던 '원래노드'의 주소값, 이걸 따라가면 '원래노드'멤버들의 값과 pNext값 . . . 이렇게 생각하면 되는건가요 ? 그럼 결국엔 이 상황에선 g_pHeadNode와 pNewNode는 pNext를 제외한 모든 멤버변수들이 같은값을 가지고 있는 상황인거라고 해석하면 되는건가요 ? ( 뭔가 3개의 노드가 다 다른 멤버변수값을 가져야할것만 같은데, 2개의 노드가 같은 멤버변수값을 가지는거같아 이상하여 이해한게 맞나, 아니면 개념을 잘못잡은건가 싶어 질문드립니다 ) 질문이 길어져 죄송합니다 . . .
++연산자가 1을 더해주는 연산자임을 배웠는데, 연산자 자체에 정수와 실수를 판단하는 명령이 있는지 궁금합니다. 변수가 만약 실수일 경우 연산자 자체에서 변수가 실수임을 인지하여 1.0을 더하는 명령 수행 (유사 오버로딩) 변수가 정수인지 실수인지 상관없이 연산자는 1을 더하려고 시도하나, 컴파일 타임에서 암시적 형변환이 이루어져 1.0을 더함 둘 중 무엇이 맞는지 궁금합니다. 또 만약 1번이 정답일 경우, c에는 오버로딩이란 개념이 없는데 비슷하게 작동을 한다 치면 c++에선 오버로딩이 적용되어 명령이 수행되는지 궁금합니다
2 ^ 64 = 16 엑사바이트 (EB)로 나오는데 32비트 운영체제와 비교했을 때 크기가 너무 차이가 나서 어색합니다.. 찾아보니 전부다 사용하는 게 아니라 일정 부분만 사용한다고 하는데 64 비트 운영체제의 가상메모리 크기와, 유저모드, 커널모드 크기가 어떻게 되는지 알 수 있을까요
Overlapped IO에서 SleepEX 같은 함수로 Alertable Wait상태로 진입할 수 있잖아요? IOCP 같은 경우 GetQueuedCompletionStatus 상태로 콜백함수를 호출할 수 있는 환경을 만들어주면 그 상태도 Alertable Wait 상태라고 할 수 있을까요?
nData 의 공간에 10 이라는 값이 리틀 엔디언 방식으로 담기고 pnData 의 공간에 nData의 64비트 주소가 리틀 엔디언 방식으로 담겨야한다고 이해했습니다. 혼자서 실습을 해보는데 pnData 에 10이 담겨있고 nData에 마우스 커서를 가져다 대봤으나 주소가 뜨지 않습니다. 무엇이 문제일까요