책 내용 질문하기
2-83쪽 4번 문제 질문입니다.
도서
2016 시나공 정보처리산업기사 필기
페이지
83
조회수
126
작성일
2016-09-25
작성자
첨부파일

워드에 대해 정확한 이해가 필요합니다.

1. 어드레스 필드의 크기에 따라 워드의 갯수가 정해지는건 알겠습니다.

2. 다만, 이러한 이유가 문제 가장 처음에 제시된 제어 기억장치의 단어 길이가 32비트이기 때문에 그런 것인지 아니면 앞서 학습한 자료의 표현 단위에서 워드의 크기(16bit, 32bit, 64bit)인 32bit를 얘기하는 것인지 정확한 답이 필요합니다.

3. 또한, 2-102쪽의 27번 문제와 2-103쪽의 28번 문제가 이와 관련된 문제인듯 한데 먼저 말씀드린 2-83쪽의 4번 문제를 정확하게 이해하지 못하여 푸는데 어려움이 있습니다.

4. 2-83쪽의 4번 문제를 정확하게 해결해 주시고 그걸 토대로 2-102쪽의 27번 문제와 2-103쪽의 28번 문제를 풀 수 있게 답변 부탁드립니다.

답변
2016-09-27 10:10:15

안녕하세요.

명령어는 기본적으로

오피코드 + 모드비트(직접, 간접) + 레지스터 지정 + 기억장소 주소

로 구분되어 있습니다.

2-103쪽 28번 문제가 명령어의 구조에 가장 부합되는 문제라고 할 수 있습니다.

기억장치의 용량은 기억장소 주소의 크기와 관련이 있습니다.

어드레스 필드는 "워드의 개수 × 워드의 크기"입니다.

위 내용을 기반으로 문제를 풀어보겠습니다.

2-83쪽 4번 문제

기억장치 단어 길이 32비트

연산(오피코드) 필드 12비트

조건(레지스터) 지정 플래그의 수 4개 = 2비트

분기(모드) 필드는 필요하지 않음

기억장치의 용량은? 즉 기억장소 주소의 크기를 묻는 것입니다.

단어(명령어) 길이 = 연산필드+모드비트+레지스터지정+기억장소주소

이므로

기억장소주소 = 단어(명령어)길이 - (연산필드+모드비트+레지스터지정)

입니다.

이제 주어진 조건을 대입하면

기억장소주소 = 32 - (12+0+2) = 18비트

기억장소주소가 18비트이므로 저장 용량, 즉 어드레스 필드는 "워드의 개수 × 워드의 크기" 입므로

2^18 × 32비트 입니다. 문제의 단위가 MB이므로 워드의 크기를 바이트로 환산하면 32/8 = 4입니다.

그러므로 2^18 × 2^2(4) = 2^20 으로 1MB가 됩니다.

2-102쪽 27번

메모리 참조 명령의 구조가 다음과 같다는 조건

OP 코드 5비트

주소지정방식 2비트

번지를 나타내는 오퍼랜드

1워드는 16비트 <- 명령어의 길이

주어진 조건을 적용하면

명령어의 길이 = OP코드+주소지정모드+오퍼랜드

16 = 5+2+오퍼랜드

오퍼랜드 = 16-7 = 9

오퍼랜드의 길이가 9비트 이므로 지정할 수 있는 범위는 2^9 = 512개, 번지는 0번지부터이므로 0~511번지

2-103쪽 28번

주기억장치 용량 32K

워드 24비트

오퍼레이션(오피코드) 비트 = ?

모드비트 = 간접비트(1비트)

레지스터 선정 비트 = 2비트

주기억장치 번지 비트 = 주기억장치 용량 32K를 이용하여 산출 32K = 2^5 × 2^10이므로 2^15, 그러므로 15비트

워드(명령어) 크기 = 오퍼레이션 비트 + 모드비트 + 레지스터지정비트 + 주소지정비트

이므로

24 = 오퍼레이션 비트 + 1 + 2 + 15

그러므로

오퍼레이션 비트 = 24 - 18 = 6 비트

오퍼레이션 비트가 6비트 이므로 표현 가능한 오퍼레이션의 개수는 2^6 = 64개

OP수는 64

MAR, PC는 주소지정비트와 같으므로 15

MBR은 워드 길이와 같으므로 24

오늘도 즐거운 하루 되세요.

  • *
    2016-09-27 10:10:15

    안녕하세요.

    명령어는 기본적으로

    오피코드 + 모드비트(직접, 간접) + 레지스터 지정 + 기억장소 주소

    로 구분되어 있습니다.

    2-103쪽 28번 문제가 명령어의 구조에 가장 부합되는 문제라고 할 수 있습니다.

    기억장치의 용량은 기억장소 주소의 크기와 관련이 있습니다.

    어드레스 필드는 "워드의 개수 × 워드의 크기"입니다.

    위 내용을 기반으로 문제를 풀어보겠습니다.

    2-83쪽 4번 문제

    기억장치 단어 길이 32비트

    연산(오피코드) 필드 12비트

    조건(레지스터) 지정 플래그의 수 4개 = 2비트

    분기(모드) 필드는 필요하지 않음

    기억장치의 용량은? 즉 기억장소 주소의 크기를 묻는 것입니다.

    단어(명령어) 길이 = 연산필드+모드비트+레지스터지정+기억장소주소

    이므로

    기억장소주소 = 단어(명령어)길이 - (연산필드+모드비트+레지스터지정)

    입니다.

    이제 주어진 조건을 대입하면

    기억장소주소 = 32 - (12+0+2) = 18비트

    기억장소주소가 18비트이므로 저장 용량, 즉 어드레스 필드는 "워드의 개수 × 워드의 크기" 입므로

    2^18 × 32비트 입니다. 문제의 단위가 MB이므로 워드의 크기를 바이트로 환산하면 32/8 = 4입니다.

    그러므로 2^18 × 2^2(4) = 2^20 으로 1MB가 됩니다.

    2-102쪽 27번

    메모리 참조 명령의 구조가 다음과 같다는 조건

    OP 코드 5비트

    주소지정방식 2비트

    번지를 나타내는 오퍼랜드

    1워드는 16비트 <- 명령어의 길이

    주어진 조건을 적용하면

    명령어의 길이 = OP코드+주소지정모드+오퍼랜드

    16 = 5+2+오퍼랜드

    오퍼랜드 = 16-7 = 9

    오퍼랜드의 길이가 9비트 이므로 지정할 수 있는 범위는 2^9 = 512개, 번지는 0번지부터이므로 0~511번지

    2-103쪽 28번

    주기억장치 용량 32K

    워드 24비트

    오퍼레이션(오피코드) 비트 = ?

    모드비트 = 간접비트(1비트)

    레지스터 선정 비트 = 2비트

    주기억장치 번지 비트 = 주기억장치 용량 32K를 이용하여 산출 32K = 2^5 × 2^10이므로 2^15, 그러므로 15비트

    워드(명령어) 크기 = 오퍼레이션 비트 + 모드비트 + 레지스터지정비트 + 주소지정비트

    이므로

    24 = 오퍼레이션 비트 + 1 + 2 + 15

    그러므로

    오퍼레이션 비트 = 24 - 18 = 6 비트

    오퍼레이션 비트가 6비트 이므로 표현 가능한 오퍼레이션의 개수는 2^6 = 64개

    OP수는 64

    MAR, PC는 주소지정비트와 같으므로 15

    MBR은 워드 길이와 같으므로 24

    오늘도 즐거운 하루 되세요.

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.