Estou um pouco confuso sobre como normalizar números em C. Sei que se você tiver algo como o ponto flutuante valor binário 1101.101, é normalizado como 1.101101 x 23, movendo o ponto decimal 3 posições para a esquerda. No entanto, não tenho certeza como fazer isso no código. Então, se eu tenho 10010000 exp 0 e eu quero obter 01001000 exp 1, o campo de fração é 001 eo resultado final é 010001. Se eu tiver um número de 8 bits e os 2 bits de liderança são 00, eu quero movê-lo até que eu Encontrar um 1, ou se eu tiver um bit líder de 01 então ele já está normalizado. Similary para um líder 2 bits de 11 eu movê-lo para a esquerda. Então, se o meu número era de 32 bits, 1 para o sinal, 8 para o expoente, 23 para a mantissa, eu faria algo como: E, em seguida, vários mais se declarações para os outros dois números de bit de liderança (00, 10) Claro se minha lógica / código está certo. Como você diz, você precisa extrair o sinal, mantissa e expoente. O diagrama acima, tirado da Wikipedia, mostra como é definido para o formato de ponto flutuante de precisão simples mais comum, IEEE 754. Para extrair cada parte precisamos fazer isso em três etapas detalhadas abaixo. Eu não tenho o código C, mas vou mostrar os passos que você precisa tomar. Depois de extrair as 3 partes, basta colocá-las nas posições de bit mostradas no diagrama acima. 1. Sinal Se seu um número unsigned este é sempre 0. Se seu assinado seu o MSB. 2. Exponente Se o número é assinado e negativo você precisará virar todos os bits e adicionar 1 para transformá-lo positivo. Se não você pode deixá-lo como está. Para extrair o expoente devemos saber onde o ponto binário está destinado a ser. Seja a posição do ponto binário b (no seu exemplo, seu 3). Deixe o primeiro bit do MSB que é 1 be p (No seu exemplo o seu 6). Deixando o expoente ser e. 3. Mantissa Isso será igual aos bits da posição p-1 até o bit 0.
ltltltltltltgtgtsalam a todos os amigos que tenho oferta para os comerciantes forex ltltltltltgtgtgt Novato Registre minha página e juntar o meu grupo eu lhe darei 200 24 horas de trabalho do robô de 80 a 90 de VENCIMENTO TAXA em apenas 50 com completa linha de guia graças ltltltltltltltltltltltltltltlt gtgtgtgtgtgtgtgtgtgtgtgtgtgtgt gtgtgtgtgtgtgtgtgtgtgtgtgtgtgt gtgtgtgtgt Abrir conta UNDAR MEU IB O código de afiliado da instaforex / en / index. phpxIKKL é o IKKL para mais informações: skype: fx00786 facebook / 24hoursrobots facebook / grupos / forexdailysignal s / robot live ganhando 24 horas confira aqui mt4i / users / fx00786 mt4i / users / fxmalta Forex Online Forex Trading Negociação de divisas Forex BrokerPFXS Ltd. Negociação de risco de risco de equipe Troca de moeda estrangeira sobre a margem carrega um alto nível de risco e pode não ser adequado para todos os investidores. O alto grau de alavancagem pode trabalhar contra você, bem como para você. Antes de decidir negociar o ...
Comments
Post a Comment