Computer System Classe e Memória Virtual - trabalho Álgebra [fechado]
-
12-09-2019 - |
Pergunta
Eu tenho o que pode ser mais uma questão de matemática, mas esta questão é decorrente de ler meus sistemas de computador livro no capítulo sobre a memória virtual ... por isso sinto-me justificado pedindo-lo aqui.
Os estados do livro:
Cada página virtual é P = 2 p bytes em tamanho.
Meu álgebra está enferrujado que é provavelmente a razão que eu preciso para fazer esta. Agora, para um exemplo que eu estou olhando, sabemos que P = 1024
. Isso significa que eu posso descobrir o que p
é simplesmente identificar quais p
fará
1024 = 2 pverdade?
Se a minha epifania é verdadeiro e correto, então 1024 = 2 10 deve ser a minha resposta. Isso é P=1024
e p=10
.
Solução
Sim. É apenas uma equação como qualquer outro.
Outras dicas
Sim .
A fim de resolver para p
você precisa usar a função logaritmo, 2
base. Resolvendo para
P = log(p, 2)
ou
10 = log(1024, 2)
Se você não tem uma função de logaritmo handy-dandy disponível para você que permite definir a base, você pode usar este. Curiosamente, não importa o que log de base você usa nas duas funções, desde que eles são os mesmos:
P = log(p) ÷ log(2)
Logaritmos são os opostos de expoentes - eles são apenas uma maneira de contar o número de vezes que você deve multiplicar um número por si só para obter a resposta, estendido para casos de suporte, onde a resposta não é um poder integrante do número original .
Espero que isso ajude.
Eu acho que esta questão está na fronteira de não programação relacionada, mas de qualquer maneira, o inverso da f(x)=a
x
é g(x)=log(x)/log(a)
. Você só precisa obter o logaritmo de base 2 P = 1024 para encontrar p
, que é de 10.
O que você está pedindo é o logaritmo binário (ld n). Você calcular isso dividindo repetidamente por 2, quebrando quando você chegar a 1 e contagem de quantas vezes você ter dividido (que é, na verdade, apenas a parte integrante + -1, mas para uma potência de dois, o logaritmo é um número natural).