문제

실제로 나는 시험을 준비하고 있었고 작년 시험 에서이 que를 준비하고 있습니다. 질문이 묻 혔습니다. i.e

8 비트 워드 프로세서 컴퓨터의 메모리에 저장할 수있는 최대 십진수 정수 번호

a) (128) 10
b) (127) 10
c) (129) 10
d) (255) 10

이 que의 답변. 답변 키에 주어진 것은 b) 127 이다. 그리고 나는 그들이이 결과에 어떻게 도착했는지 전혀 모른다.

acc. 내 이해에, 우리는 2 8 = 256 255 8 인 8 비트가 있습니다. 255 은 우리가 저장할 수있는 최대 정수 여야합니다.

편집 - 다른 매우 유사한 que. 동일한 시험에서 묻는 것은

였습니다

n 비트 워드 프로세서가있는 컴퓨터의 최대 허용 정수 및 정수당 한 단어는

와 같습니다.

a) 2 n - 1 - 1 b) 2 n - 1 c) 2 n - 1 + 1
d) 2 n + 1

ans. a) 2 n - 1 - 1 (공식 Ans에 대한 acc. 키).

위의 que에서 n= 8을 넣음으로써

. 우리는 답변을 얻었습니다. 127.하지만 다시 나는 그들이 어떻게이 대답을 도출 했는가?

도움이 되었습니까?

해결책

다음은 합리적인 평결이며, Steven의 의견과 해롤드의 의견에 의해 더 이상 맥락이 없어졌습니다.

8 비트 워드 프로세서 컴퓨터의 메모리에 저장할 수있는 최대 (10 진수) 정수는 컨텍스트에 따라 다르므로 부호없는 정수 또는 서명 된 정수에 대해 이야기하는지 여부입니다.

8 비트 컴퓨팅의 Wikipedia 페이지 ,

$ 2 ^ 8 $ (256) 8 비트에 대해 다른 가능한 값이 있습니다. 서명되지 않은 경우 0에서 255까지의 값이 가능합니다. 서명하면 -128 ~ 127이 있습니다.

더 이상 컨텍스트가 없으면 자연스러운 대답은 $ 2 ^ 8-1= 255 $ 이어야합니다. 우리는 8 비트 시퀀스 (기본 수준, 안전성을 더 안전하며 안전한 것)를 255 이상으로 해석하는 컴퓨터 프로세서를 보지 못했습니다. 반면에 거의 모든 컴퓨터 프로세서는 8 비트를 해석 할 수 있습니다. (부호없는) 정수로서의 시퀀스는 255만큼 커집니다. 사실, Kristian h의 좋은 대답

서명되지 않은 숫자는 일련의 비트의 한 번의 해석입니다. 주소 및 OP 코드가 단순히 비트하기 때문에 가장 간단하고 가장 많이 사용되는 해석이 내부적으로 내부적으로 사용됩니다. 메모리 / 스택 어드레싱 및 산술은 마이크로 프로세서, 음, 처리의 기초입니다. 추상화 피라미드를 위로 이동하는 비트의 또 다른 빈번한 해석은 문자 (ASCII, 유니 코드, EBCDIC)로서입니다.


위에서 그 질문에 제시된 바와 같이 질문과 답변 스위트를 구절하지 않겠지 만, 그 시험의 저자의 선택을 방어하기 위해 나와 있습니다.

시험에있는 질문은 이진 컴퓨터 프로세서의 숫자 표현에 대한 학생의 기본적인 이해를 테스트하도록 설계되었습니다.

학생이 선택한 경우, "B) (127) 10 " "", 우리는 학생이 표현에 대해 매우 기본적인 것을 알고 있다고 확신 할 수 있습니다. 2의 보완 8 비트에서 한 번 밖으로 나오는 것은 기호를 나타내는 데 사용해야합니다. 어떻게 든, 양의 정수의 범위는 음의 정수의 범위보다 하나보다 적습니다. 따라서 8 비트에서 최대 부호있는 정수는 $ 2 ^ {8-1} -1 $ 입니다. 우리는 학생이 8 비트에서 $ 2 ^ 8-1= 255 $ 일 수있는 최대 부호없는 정수를 알 수 있다는 것을 자신감을 가질 수 있습니다.

그러나 학생이 "d) (255) 10 "을 선택하면 학생이 서명 한 정수에서 어떤 일이 발생하는지 알고 있음을 정당화하기가 어렵습니다. 따라서 시험이 얼마나 많은 학생들이 배웠는지 확인하기 위해 시험을 겨냥한 경우, 선택 b) 적절할 수 있습니다.

시험의 맥락에서 학생은 선택을 대신 대신 선택하지 않고 선택한 경우 학생이 더 잘 고려 될 수있는 더 좋은 기회를 갖게 될 것입니다. 또는 더 나은 성적을 얻을 수있는 더 나은 기회.


다시 한 번, 해롤드의 평결을 강조하겠습니다. "합리적인 질문이 아닙니다". 이상적으로는 B)의 의도 된 선택의 경우 질문은 "8 비트 워드 프로세서 컴퓨터의 메모리에 저장할 수있는 최대 부호있는 정수"가야합니다.


2의 보수에 대한 자세한 설명은 이 Wikipedia 페이지 .

다른 팁

기술 정보 시험에서 똑같은 질문을 받았습니다.올바른 대답은 127이었고, 서명 된 정수가 기본 형식 이었기 때문에, 범위는 -128에서 127로 이동할 수 있지만, 256 개의 고유 한 값을 표시 할 수 있지만 최대 127은 여전히 127이 될 수 있습니다.

단일 8 비트 단어로 256 개의 다른 별개 값을 나타낼 수 있습니다. 그러나 첫 번째 질문에는 한 단어 만 사용하도록 제한하는 첫 번째 질문에는 아무 것도 없으며 원하는 단어를 사용할 수 있습니다. 두 단어로 이미 65536 값을 나타내는 42 단어로 이미 유니버스의 모든 입자를 대표 할 수 있습니다. 따라서, 표현 될 수있는 최대 정수는 임의로 큰 이다. 을 다른 방법으로 두지 않는다. .

두 번째 질문은 단일 단어를 사용하도록 제한하지만 여전히 문제가 있습니다. 우리는 이제 256 개의 별개의 값만 나타낼 수 있지만 해당 값이 어떻게 인코딩되는지에 대해 알려주지는 않습니다. 예를 들어, ISO8859-1 문자 인코딩은 국제 일반 통화 기호 (GENERACODODICCODE)를 256 개의 값 중 하나로 나타내지 만 유로 기호 (¤)를 나타낼 수 없습니다. 반면에 ISO8859-15는 유로 기호를 나타낼 수 있지만 일반 통화 기호는 아니며 Bitcoin 통화 기호 를 나타낼 수 없습니다.

동일한 숫자에 대해서도 : 8 비트와 부호없는 단항 인코딩을 사용하면 0에서 8까지의 숫자를 나타낼 수 있습니다. 서명 된 단항 인코딩을 사용하여 -0에서 -7에서 +7까지 숫자를 나타낼 수 있습니다. 및 +0. 42만큼 부호없는 단항 인코딩 오프셋을 사용하면 42 ~ 50의 번호를 나타낼 수 있습니다.

서명 된 또는 부호없는, 단조, 바이너리, 소수점 또는 다른 인코딩을 사용하는지 여부에 관계없이, 나는 인코딩에 오프셋을 도입함으로써 항상 임의로 큰 숫자를 나타낼 수 있습니다.

다시, 두 번째 질문에도 해답을주는 것은 불가능합니다.

두 번째 질문에 답하기 위해, 우리는 첫 번째 질문에 답하기 위해 인코딩을 알아야 할 필요가 있습니다. 인코딩 및 메모리 크기를 알아야합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 cs.stackexchange
scroll top