คำถามติดแท็ก hexadecimal

5
หากตัวเลขมีขนาดใหญ่เกินไปมันจะกระจายไปยังตำแหน่งหน่วยความจำถัดไปหรือไม่
ฉันได้รับการตรวจสอบการเขียนโปรแกรม C และมีเพียงสองสามสิ่งที่รบกวนฉัน ลองทำโค้ดนี้กันตัวอย่าง: int myArray[5] = {1, 2, 2147483648, 4, 5}; int* ptr = myArray; int i; for(i=0; i<5; i++, ptr++) printf("\n Element %d holds %d at address %p", i, myArray[i], ptr); ฉันรู้ว่า int สามารถมีค่าสูงสุดเป็นบวก 2,147,483,647 ดังนั้นเมื่อทำอย่างนั้นมันจะ "ล้น" ไปยังที่อยู่หน่วยความจำถัดไปซึ่งทำให้องค์ประกอบ 2 ปรากฏเป็น "-2147483648" ที่ที่อยู่นั้นหรือไม่ แต่นั่นก็ไม่สมเหตุสมผลเพราะในผลลัพธ์มันยังบอกว่าที่อยู่ถัดไปเก็บค่า 4 จากนั้น 5 ถ้าจำนวนที่หกไปยังที่อยู่ถัดไปนั่นจะไม่เปลี่ยนค่าที่เก็บไว้ที่ที่อยู่นั้น ? …

22
เรียนรู้เลขฐานสิบหกทำไม [ปิด]
ฉันได้เรียนการเขียนโปรแกรมอินโทรค่อนข้างน้อยในสมัยของฉันส่วนใหญ่เพียงเพื่อให้เท้าของฉันเปียกในการเขียนโปรแกรมทุกชนิดที่ฉันพบ ไม่น่าแปลกใจที่เกือบทุกคลาสจะทำงานในรูปแบบเดียวกันนั่นคือบทนำเกี่ยวกับฮาร์ดแวร์บทนำของซอฟต์แวร์จากนั้นคุณจะเข้าสู่การเขียนโปรแกรมจริง ในขณะที่การทำความเข้าใจว่าฮาร์ดแวร์และซอฟต์แวร์ทำงานอย่างไรมีความสำคัญมากฉันมักจะสับสนกับหัวข้อหนึ่งที่อยู่ในทุกหลักสูตร ในส่วนของซอฟต์แวร์ที่ฉันพบโดยไม่ล้มเหลวพวกเขาให้ความสำคัญอย่างมากกับการรู้หนังสือในระบบเลขฐานสองเลขฐานสิบหกและบางครั้งแม้แต่ระบบเลขฐานแปด ฉันเข้าใจว่าเป็นการดีที่จะเข้าใจสิ่งเหล่านี้คืออะไรและคอมพิวเตอร์จะตีความได้อย่างไร แต่ฉันไม่เคยพบว่าตัวเองต้องการรู้วิธีการอ่านและเขียนระบบตัวเลขเหล่านี้ จริงๆแล้วครั้งเดียวที่ฉันได้เห็นบางสิ่งที่นอกเหนือจากฐาน 10 นั้นใช้สำหรับสีใน CSS ซึ่งง่ายกว่าถ้าคุณใช้บางอย่างเช่น www.colorpicker.com ฉันเพิ่งรู้การใช้งานที่ยอดเยี่ยมของระบบตัวเลขที่ไม่ใช่ฐาน 10 เหล่านี้ในโลกแห่งการเขียนโปรแกรมหรือเป็นเพียงประเพณีเก่า ๆ ที่รวมหัวข้อเหล่านี้ไว้ในตำราการเขียนโปรแกรมทั้งหมดหรือไม่? ใครบ้างมีตัวอย่างที่ดีของที่โปรแกรมเมอร์เฉลี่ยจะใช้เลขฐานแปดจริงหรือไม่?
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.