ฉันทำงานกับอุปกรณ์ฝังตัวที่มีโปรโตคอลเฉพาะที่ส่งข้อความไปยังอุปกรณ์อื่นและฉันกำลังสร้างแอปพลิเคชันที่แยกวิเคราะห์แพ็คเก็ตที่ส่ง แต่ละแพ็คเก็ตมีขนาด 8 ไบต์ โพรโทคอลถูกกำหนดเป็นโดยที่ไบต์แรกเป็นส่วนหัวและ 7 ไบต์ที่เหลือคือข้อมูล
พวกเขาพยายามที่จะส่งสตริง ID เฉพาะ แต่สตริง ID ยาว 8 อักขระ (ASCII) ดังนั้นมันจะไม่พอดีกับ 7 ไบต์
สิ่งที่เพื่อนร่วมงานของฉันบอกฉันคือพวกเขากำลังจะเปลี่ยน 8 ไบต์ ASCII ของสตริงเดิมเป็นจำนวนเต็ม (ทศนิยม) และส่งให้ฉัน 4 ไบต์ พวกเขาบอกฉันว่าฉันควรจะได้รับสายดั้งเดิมจาก 4 ไบต์ ฉันมีปัญหาเวลาปิดหัวของฉันรอบนี้
ดังนั้นถ้าคุณมีสตริง ID เช่น "IO123456" นั่นคือ 0x49 0x4f 0x31 0x32 0x33 0x34 0x35 0x35 0x36 ใน ASCII .. คุณจะบีบอัดมันใน 4 ไบต์ได้อย่างไรโดยเปลี่ยนเป็นจำนวนเต็มและฉันจะได้สตริงเดิมจากมัน ? ฉันทำอะไรหายหรือมีเพื่อนร่วมงานเข้าใจผิด? ฉันเข้าใจว่านี่เป็นคำถาม bizzare จริงๆ แต่สิ่งนี้ไม่ได้ทำให้ฉันรู้สึกอะไรเลย