java - การแปลง ชนิดตัวแปร

คำถามครับ

input = พิมพ์ "ก"
แปลงเป็น byte เลขฐาน 2 ได้ "10100001"
ต่อมาต้องการแปลงเป็นแบบใช้เครื่องหมาย 1.0100001  = -0.7421   (ตรงขั้นตอนนี้เขาเรียกกันว่าอะไรครับ)
ผมเขียนโค้ดมาคือ
    int s10 = Integer.parseInt(mySub1.substring(0,1).replace("1", "-1"));
    int s11 = Integer.parseInt(mySub1.substring(1,2));
    int s12 = Integer.parseInt(mySub1.substring(2,3));
    int s13 = Integer.parseInt(mySub1.substring(3,4));
    int s14 = Integer.parseInt(mySub1.substring(4,5));
    int s15 = Integer.parseInt(mySub1.substring(5,6));
    int s16 = Integer.parseInt(mySub1.substring(6,7));
    int s17 = Integer.parseInt(mySub1.substring(7,8));
    double result0 = s10*Math.pow(2,0);
    double result1 = s11*Math.pow(2,-1);
    double result2 = s12*Math.pow(2,-2);
    double result3 = s13*Math.pow(2,-3);
    double result4 = s14*Math.pow(2,-4);
    double result5 = s15*Math.pow(2,-5);
    double result6 = s16*Math.pow(2,-6);
    double result7 = s17*Math.pow(2,-7);
    double summer = result0 + result1 +result2+result3+result4+result5+result6+result7;

น่าจะมีจุดออ่อนเยอะ แนะนำหน่อยครับ

ถามต่อครับ
แล้วพอจะมีวิธีแปลงกลับไหมครับ
เช่น ให้ -0.7421 กลายเป็น 10100001


ขอบคุณครับ
แสดงความคิดเห็น
โปรดศึกษาและยอมรับนโยบายข้อมูลส่วนบุคคลก่อนเริ่มใช้งาน อ่านเพิ่มเติมได้ที่นี่