inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

넓고 얕게 외워서 컴공 전공자 되기

CPU가 곱하고 나누는 방법

CPU가 곱하고 나누는 방법 질문

해결된 질문

574

긴장한 도미

작성한 질문수 3

1

안녕하세요. :-)

강의 너무 잘 듣고 있습니다.

사소하지만 곱셈에 대해 궁금한 부분이 있습니다.

 

4비트로 표현한 5인 0101을

왼쪽으로 한칸씩 밀고(shift)

맨 오른쪽에 0이 채워지면(padding)

결과가 1010으로 10이 되고

이처럼 한 칸을 밀면 곱하기 2를 한 것과 같은 것은 이해를 하였는데요.

 

교안에 따라 4비트로 표현한 5인 0101을 두 칸을 밀면,

곱하기 4로 20이 될것으로 기대했는데,

결과적으로는 0100으로 4가 아닌가요?

제가 어떤 부분을 이해를 못하고 있는 것인지 궁금합니다.

 

감사합니다.

 

운영체제

답변 2

1

긴장한 도미

헉. 잘못남겨서 수정하고 있었습니다.

빠른 답변 주셔서 감사합니다.

1

널널한 개발자

제가 인프런 화면을 보고 있었던 터라... 답을 너무 빨리 달았나 보네요. ^^;;;

1

널널한 개발자

네, 2진수 0101을 왼쪽으로 2회 쉬프트할 경우 * 4를 한 것과 같습니다. 따라서 결과는 20이 되어야 합니다. 다만 20은 4비트로 표현할 수 있는 최대 숫자인 15를 초과합니다. 0101 왼쪽으로 2회 쉬프트 하면 2진수 10100이 되어야 하겠으나 4비트 범위를 벗어난 1에 대해 '잘림'이 발생합니다. 이 때문에 2진수 0100이 되고 10진수로는 4가 되겠습니다.

만일 8비트 환경이라면 2진수 00010100이 됐을 것이고 잘림은 발생하지 않아 정확히 20이 됐을 것입니다. 참고하시기 바랍니다.

운영체제/메모리분할방식 질문있습니다.

0

560

2

Open addressing을 사용할 때의 worst case

1

462

1

안녕하세요 선생님, API 실습 2 강의를 듣다 궁금한 점이 생겨 질문 드립니다.

0

538

2

User mode와 관련하여 질문있습니다.

0

555

1

퀴즈 7번의 답에 대한 질문입니다.

0

541

1

프로그램과 프로세스 강의 3분47초

1

635

1

인터넷 계층과 네트워크 엑세스 계층

1

488

1

패킷이란

1

420

1

프로세스 생성, 복사 강의 관련

0

409

2

Linked list의 장점

1

648

1

교재 질문

0

373

1

이해하고 있는것이 맞는건지 궁금합니다 ㅠㅠ

0

802

1

타우시간

0

533

1

강의에서 말씀하시는 메모리 공간

0

875

1

컴파일 과정

1

545

1

페이징 기법에 대해 질문드립니다

0

1179

1

외워야할 단위체계 부분입니다.

4

570

1

가상 메모리 소개 강의 마지막 부분에서

0

465

1

강의명 오타 보고

0

500

1

메모리 관련하여 질문드립니다

0

353

1

선생님 32비트로 표현할 수 있는 가짓수가 2^32라면,

0

588

1

너튜브에 올라온 강의들과 다른점이 뭔지 궁금합니다.

0

1364

1

r/w/x 권한 질문

2

410

1

prefix 0x는 그저 16진수임을 나타내는 의미인가요?

3

1624

1