วันเสาร์ที่ 25 มกราคม พ.ศ. 2557

สรุปเนื้อหาสัปดาห์ที่3

Floating Point

Quiz สัปดาห์ที่2

จงจัดเก็บ – 0.0123 ตามรูปแบบ Binary16 ของมาตรฐาน IEE 754:2008 บนคอมพิวเตอร์ 32 bit ชนิด Little-Endian โดยใช้จำานวน bits ของ Significant ก่อนการปัดเศษ 13 bits

เฉลย: ค่าตั้งต้น ฐาน 2
 0.0123 0.
 0.0246 0.0
 0.0492 0.00
0.0984 0.000
0.1968 0.0000
0.3936 0.0000 0
0.7872 0.0000 00
1.5744 0.0000 001
1.1488 0.0000 0011
0.2976 0.0000 0011 0
0.5952 0.0000 0011 00
1.1904 0.0000 0011 001
0.3808 0.0000 0011 0010
0.7616 0.0000 0011 0010 0
1.5232 0.0000 0011 0010 01
1.0464 0.0000 0011 0010 011
0.0928 0.0000 0011 0010 0110
0.1956 0.0000 0011 0010 0110 0
0.3912 0.0000 0011 0010 0110 00
0.7824 0.0000 0011 0010 0110 000
1.5648 0.0000 0011 0010 0110 0001

0.0123 ~ 1.1001 0011 0000 1 x 2^–7
Sign = 1 (negative value) = 1h
Exponent =  –7  + 15 = 8 => 0 1000 = 08h
Significant = 1001 0011 0000 1
คิดเสมือนว่าเป็น 1001 0011 00.00 1
ดังนั้นเมื่อเขียนบนเส้นจำานวนจะได้ว่า


Significant (Round toward 0) = 1001 0011 00 = 930h
Significant (Round toward +infinity) = 1001 0011 00 = 930h
Significant (Round toward –infinity) = 1001 0011 01 = 934h
Significant (Round to nearest, tie away from 0) = 1001 0011 00 = 930h
Significant (Round to nearest, tie to even) = 1001 0011 00 = 930h

Sign, Biased Exponent, Significant (Round toward –infinity)
Base Sign Biased Exponent Significant 
10      1               8            
2        1               0 1000     1001 0011 01(00)
16      1               08            9 3 4


-0.0123 = 1, 0 1000, 1001 0011 00
= 1010   0010   0100   1100 (16-bit)
= A2 4C (16-bit)
= 00 00 A2 4C (32-bit)
= 4C A2 00 00 (Little-endian 32-bit)

เฉลยโดย.ดร.สุรเดช จิตรประไพกุลศาล

สรุปเนื้อหาสัปดาห์ที่ 1

การแปลงเลขฐาน
ระบบเลขฐาน 2 (Binary Number System) เป็นเลขฐานที่ประกอบด้วยเลข 2 ตัว ได้แก่เลข 0 กับ เลข 1 ซึ่งเป็นเลขฐานที่คอมพิวเตอร์สามารถเข้าใจได้ง่าย เพราะว่าอุปกรณ์ทางไฟฟ้าก็มีสถานะเพียง 2 สถานะ คือ เปิด กับ ปิด ซึ่งก็เทียบได้กับ 0 กับ 1 แต่ถ้าใช้เลขฐาน 10 ในคอมพิวเตอร์อาจจะเกิดปัญหาอย่างอื่นตามมา หรือแม้แต่อุปกรณ์ทางไฟฟ้า ก็ต้องแบ่งสถานะออกเป็น 10 สถานะ ซึ่งไม่เป็นที่นิยมนัก การเก็บข้อมูลในระบบของคอมพิวเตอร์ก็จะจัดเก็บเป็นกลุ่มตัวเลขฐานสองหลายบิต ขึ้นอยู่กับขนาดของสิ่งที่ต้องการเก็บ และหน่วยความจำที่ใช้
ระบบเลขฐาน 8 (Octal Number System) เป็นเลขฐานที่ประกอบด้วยเลข 8 ตัว ซึ่งประกอบด้วยเลข 0, 1, 2, 3, 4, 5, 6, 7 ซึ่งเป็นเลขฐานที่เพิ่มเนื้อที่หน่วยความจำในการเก็บให้มากขึ้น การเก็บข้อมูลเป็นเลขฐาน 8 จะทำให้เก็บข้อมูลได้มากขึ้น
ระบบเลขฐาน 10 (Decimal Number System) เป็นเลขฐานที่ประกอบด้วยตัวเลข 10 ตัว ซึ่งประกอบด้วยเลข 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 ซึ่งระบบเลขฐาน 10 เป็นระบบเลขฐานที่คนทั่วไปสามารถเข้าใจได้เป็นอย่างดี เพราะเป็นตัวเลขที่เกี่ยวข้องกับชีวิตประจำวันซึ่งใช้มาตลอด สามารถจำได้และคำนวณได้ง่ายกว่าเลขฐานอื่น ๆ
ระบบเลขฐาน 16 (Hexadecimal Number System) เป็นเลขฐานที่ประกอบด้วยตัวเลข 10 ตัวและตัวอักษรแทนตัวเลขอีก 6 ตัว ซึ่งประกอบด้วยเลข 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 และตัวอักษรภาษาอังกฤษแทน 10 ถึง 15 ได้แก่ A, B, C, D, E, F ซึ่งก็จะเก็บข้อมูลได้มากกว่าระบบเลขฐาน 2 ฐาน 8

Big Endian &Little Endian


Big Endian & Little Endian ก็คือ การจัดเรียงค่าของไบต์ของหน่วยความจำในการเก็บค่าตัวเลขจำนวนมากกว่า 1 ไบต์ในหน่วยความจำซึ่งมีอยู่ 2 แบบได้แก่แบบ Big Endian และแบบ Little Endian โดยซีพียูที่ใช้แบบ Big Endian จะได้แก่ 68k หรือ 68000 ของโมโตโรล่า, SPARC ของ Sun, MIPS ของ Silicon Graphics และ PA-RISC ของ HPส่วนสถาปัตยกรรมที่ใช้แบบ Little Endian จะได้แก่ 80×86 ของอินเทล และ Alpha ของ Compaq
โดยที่ Big Endian นั้นจะใช้แอดเดรสไบต์ต่ำสุดเก็บค่าของข้อมูลไบต์สูงสุดของเวิร์ด ในขณะที่สถาปัตยกรรมแบบ Little Endian จะเก็บไบต์ต่ำสุดของเวิร์ดด้วยแอดเดรสไบต์ต่ำสุดและเก็บค่าไบต์สูงสุดของเวิร์ดไว้ในแอดเดรสไบต์สูงสุด

การปัดค่า

ขั้นตอนการ Download & Install ARM&MIPS Simulator

ARM Simulator
LinkDownload: http://armsim.cs.uvic.ca/



MIPS Simulator
LinkDownload: http://sourceforge.net/projects/spimsimulator/files/