我接收一个8位十六进制数作为IEEE 754位浮点数,我想打印有关该数字的信息(signbit,expbits,fractbits,normalized,denormalized,infinity,zero,NAN)浮点应该是单个.
我读了一下比特移位,我想这就是我想这样做的原因吗?但是,我并非100%肯定.我知道符号位位于数字的最左侧位置.表示正面或负面.我将它移动多少才能找到每个?我只是继续转移它找到每一个?谁能解释我是如何找到每一个人的?
我会换1来找到标志吗?我会换8来得到指数吗?我会换23来获得压裂吗?
signbit应为零
expbits应该是128
fracbits应该是0x00000000我想......
如果是这样,我如何在转移后测试它?
这就是我到目前为止所拥有的
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
short wordOrder = 0x0100;
int HexNumber;
printf("Hex IEEE - 754\n");
if(wordOrder == 0x0100)
{
printf("\nbyte order: big-endian\n");
}
else
{
printf("byte order: little-endian\n");
}
printf("\n>");
scanf("%x", &HexNumber);
printf("\n%#x",HexNumber);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我的输入(scanf)我想要的方式..
>40000000
0x40000000
Run Code Online (Sandbox Code Playgroud)
它正在做什么..
使用msdos窗口我在amazon.txt文件中管道.我正在尝试使用集合框架.请记住,我希望尽可能简化这一点.我想要做的是计算文件中的所有独特单词...没有重复.
这就是我到目前为止所拥有的.请善意这是我的第一个java项目.
import java.util.Scanner;
import java.util.ArrayList;
import java.util.Iterator;
public class project1 {
// ArrayList<String> a = new ArrayList<String>();
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String word;
String grab;
int count = 0;
ArrayList<String> a = new ArrayList<String>();
// Iterator<String> it = a.iterator();
System.out.println("Java project\n");
while (sc.hasNext()) {
word = sc.next();
a.add(word);
if (word.equals("---")) {
break;
}
}
Iterator<String> it = a.iterator();
while (it.hasNext()) {
grab = it.next();
if (grab.contains("a")) {
System.out.println(it.next()); // Just a check …Run Code Online (Sandbox Code Playgroud)