stanford-oval/wikipedia huggingface dataset:
จำนวนจุดลอยตัว
IEEE 754: จำนวนจุดลอยตัวในคอมพิวเตอร์สมัยใหม่ > จำนวนพิเศษ > ศูนย์มีเครื่องหมาย

บทความหลัก: ศูนย์มีเครื่องหมาย
ในมาตรฐาน IEEE 754 ค่าศูนย์มีเครื่องหมาย หมายความว่ามีทั้ง "บวกศูนย์" (+0) และ "ลบศูนย์" (−0) ในสภาวะแวดล้อมขณะทำงานส่วนใหญ่ ค่าบวกศูนย์โดยทั่วไปพิมพ์เป็น "0" และค่าลบศูนย์อาจพิมพ์เป็น "-0" จำนวนทั้งสองมีความเท่ากันในการเปรียบเทียบเชิงจำนวน แต่การดำเนินการบางอย่างกับ +0 และ −0 จะให้ผลลัพธ์ที่ต่างออกไป ตัวอย่างเช่น 1 / (−0) จะให้ผลเป็นค่าอนันต์ที่เป็นลบ ในขณะที่ 1 / (+0) จะให้ผลเป็นค่าอนันต์ที่เป็นบวก อย่างไรก็ตามการดำเนินการดังกล่าวจะเกิดขึ้นพร้อมกับสิ่งผิดปรกติ "การหารด้วยศูนย์" หรืออีกตัวอย่างหนึ่ง การดำเนินการ arccot สมมาตรมีเครื่องหมาย จะให้ผลลัพธ์ต่างกับสำหรับ +0 และ −0 โดยไม่มีสิ่งผิดปรกติ ความแตกต่างระหว่าง +0 และ −0 เป็นที่สังเกตได้มากที่สุดในการดำเนินการเชิงซ้อนที่ส่วนตัดแบรนช์ (branch cut)
IEEE 754: จำนวนจุดลอยตัวในคอมพิวเตอร์สมัยใหม่ > จำนวนพิเศษ > จำนวนต่ำกว่าบรรทัดฐาน

จำนวนต่ำกว่าบรรทัดฐาน (subnormal number) เป็นจำนวนที่เติมในช่องว่างน้อยเกินเก็บ (underflow gap) ด้วยค่าซึ่งระยะห่างสัมบูรณ์ระหว่างจำนวนต่ำกว่าบรรทัดฐาน เหมือนกับจำนวนอื่นที่อยู่ติดกันนอกช่องว่างน้อยเกินเก็บนี้ สิ่งนี้เป็นการปรับปรุงการปฏิบัติแบบเก่าซึ่งให้ค่าเป็นศูนย์เท่านั้นภายในช่องว่างน้อยเกินเก็บ และผลลัพธ์ที่น้อยเกินเก็บถูกแทนที่ด้วยศูนย์ (ถูกปัดเศษทิ้งเป็นศูนย์)
ฮาร์ดแวร์จำนวนจุดลอยตัวสมัยใหม่สามารถจัดการจำนวนต่ำกว่าบรรทัดฐานเหล่านี้ได้ เช่นเดียวกับจำนวนบรรทัดฐาน และไม่ต้องการการจำลองจากซอฟต์แวร์
IEEE 754: จำนวนจุดลอยตัวในคอมพิวเตอร์สมัยใหม่ > จำนวนพิเศษ > อนันต์

อนันต์บนเส้นจำนวนจริงขยายสามารถแทนได้ในชนิดข้อมูลจำนวนจุดลอยตัว IEEE เช่นเดียวกับจำนวนจุดลอยตัวทั่วไปอย่าง 1 หรือ 1.5 ค่านี้ไม่ใช่ค่าที่เกิดความผิดพลาด ถึงแม้ว่ามันจะใช้แทนค่าที่มากเกินเก็บ (overflow) (แต่ไม่เสมอไป ขึ้นอยู่กับการปัดเศษ) เมื่อเกิดสิ่งผิดปรกติของการหารด้วยศูนย์ จะคืนค่าอนันต์ที่เป็นบวกหรือลบออกมาเป็นผลลัพธ์ ค่าอนันต์สามารถแนะนำให้เป็นจำนวนจำนวนหนึ่ง (เหมือนแมโคร INFINITY ของภาษาซี หรือ ∞ ถ้าภาษาโปรแกรมนั้นอนุญาตให้ใช้ได้)
IEEE 754 ต้องการการจัดการอนันต์อย่างสมเหตุสมผล ตัวอย่างเช่น
(+∞) + (+7) = (+∞)
(+∞) × (−2) = (−∞)
(+∞) × 0 = NaN (ไม่มีความหมาย)
IEEE 754: จำนวนจุดลอยตัวในคอมพิวเตอร์สมัยใหม่ > จำนวนพิเศษ > ค่าไม่ใช่จำนวน

บทความหลัก: ไม่ใช่จำนวน
IEEE 754 ระบุค่าพิเศษอีกอย่างหนึ่งคือค่าไม่ใช่จำนวน (อังกฤษ: NaN (Not a Number)) เพื่อคืนค่าเป็นผลลัพธ์สำหรับการดำเนินการที่ "ไม่สมเหตุสมผล" ตัวอย่างเช่น 0/0, ∞×0, sqrt(−1) เป็นต้น NaN แท้จริงแล้วมีสองชนิดคือ signaling และ quiet การใช้ signaling NaN ในการดำเนินการเลขคณิตใด ๆ (รวมทั้งการเปรียบเทียบเชิงจำนวน) ทำให้เกิดสิ่งผิดปรกติ "ไม่สมเหตุสมผล" ส่วนการใช้ quiet NaN จะได้ผลลัพธ์เป็น NaN เท่านั้นโดยไม่เกิดสิ่งผิดปรกติ
การแทนค่า NaN ที่กำหนดโดยมาตรฐาน มีบางบิตที่ไม่ระบุซึ่งอาจใช้เข้ารหัสชนิดของข้อผิดพลาดได้ แต่ก็ไม่มีมาตรฐานสำหรับการเข้ารหัสนี้ ในทางทฤษฎี signaling NaN สามารถใช้กับระบบขณะทำงาน (runtime system) เพื่อขยายจำนวนจุดลอยตัวด้วยค่าพิเศษอื่น โดยไม่ต้องชะลอการคำนวณกับจำนวนธรรมดา แม้ว่าการขยายเช่นนั้นดูเหมือนว่าไม่เป็นสิ่งปกติสามัญ
จำนวนที่แทนได้ การแปลง และการปัดเศษ

โดยธรรมชาติแล้ว จำนวนทุกจำนวนที่สามารถเขียนให้อยู่ในรูปแบบจำนวนจุดลอยตัว เป็นจำนวนตรรกยะที่มีจุดฐานรู้จบในฐานที่สัมพันธ์กัน (เช่นทศนิยมรู้จบในฐานสิบ หรือทวินิยมรู้จบในฐานสอง) ส่วนจำนวนอตรรกยะอย่างเช่น π หรือ √2 หรือจำนวนตรรกยะที่มีจุดฐานไม่รู้จบต้องใช้เป็นค่าประมาณ จำนวนของเลขโดด (หรือบิต) ของความเที่ยงก็เป็นตัวจำกัดเซตของจำนวนตรรกยะที่สามารถแทนค่าได้อย่างแม่นยำ ตัวอย่างเช่น จำนวน 123456789 จะไม่สามารถแทนค่าได้อย่างแม่นยำถ้ามีความเที่ยงบนเลขโดดฐานสิบเพียงแปดหลัก เป็นต้น
เมื่อจำนวนหนึ่งถูกแทนค่าในรูปแบบอย่างหนึ่ง (เช่นสายอักขระ) ซึ่งไม่ใช่การแทนจำนวนจุดลอยตัวพื้นเดิมที่รองรับในคอมพิวเตอร์ จำนวนนั้นจะต้องถูกแปลงก่อนนำมาใช้ในระบบคอมพิวเตอร์ ถ้าหากจำนวนนั้นสามารถแทนค่าในรูปแบบจำนวนจุดลอยตัวได้อย่างแม่นยำ การแปลงนั้นก็จะถูกต้องแม่นยำด้วย ถ้าหากไม่สามารถแทนค่าได้อย่างแม่นยำ การแปลงก็จะต้องเลือกจำนวนจุดลอยตัวอื่นมาใช้แทนค่าดั้งเดิม ซึ่งค่าที่ถูกเลือกนี้มีค่าต่างจากค่าดั้งเดิม และค่าที่ถูกปรับแต่งเรียกว่า ค่าจากการปัดเศษ
จำนวนตรรกยะไม่จำเป็นว่าต้องมีจุดฐานรู้จบในฐานที่สัมพันธ์กัน ตัวอย่างเช่น จำนวน 1/2 ในฐานสิบเป็นทศนิยมรู้จบ (0.5) ในขณะที่ 1/3 เป็นทศนิยมไม่รู้จบ (0.333…) จำนวนตรรกยะในฐานสองที่มีตัวส่วนเป็นกำลังของ 2 เท่านั้นที่เป็นทวินิยมรู้จบ (เช่น 1/2 หรือ 3/16) จำนวนตรรกยะที่มีตัวส่วนเป็นตัวประกอบเฉพาะอื่นนอกจาก 2 เป็นทวินิยมไม่รู้จบ สิ่งนี้หมายความว่า จำนวนที่สั้นและแม่นยำซึ่งเขียนในฐานสิบ อาจจำเป็นต้องประมาณค่าเมื่อแปลงเป็นจำนวนจุดลอยตัวฐานสอง เช่น จำนวนฐานสิบ 0.1 ไม่สามารถแทนค่าได้อย่างแม่นยำในจำนวนจุดลอยตัวฐานสองอันมีความเที่ยงจำกัด การแทนฐานสองจะได้ลำดับ "1100" ซ้ำไปเรื่อย ๆ ไม่รู้จบ
เมื่อ s คือซิกนิฟิแคนด์และ e คือเลขชี้กำลัง ดังที่เคยอธิบายไว้ก่อนหน้า
เมื่อปัดเศษให้เหลือ 24 บิตจะกลายเป็น
ซึ่งมีค่าที่แท้จริงเท่ากับ 0.100000001490116119384765625 ในฐานสิบ
หรืออีกตัวอย่างหนึ่ง จำนวนจริง π เขียนแทนในฐานสองด้วยลำดับบิตไม่รู้จบได้เป็น
เมื่อปัดเศษให้เหลือ 24 บิตจะกลายเป็น
ในจำนวนจุดลอยตัวฐานสองแบบความเที่ยงหนึ่งเท่า จำนวนนี้จะแทนค่าด้วย s = 1.10010010000111111011011 และ e = 1 ซึ่งจำนวนนี้มีค่าในฐานสิบเป็น
ในขณะที่การประมาณค่า π ที่เที่ยงตรงมากกว่าควรจะเป็น
ผลลัพธ์ของการปัดเศษต่างจากค่าที่แท้จริงประมาณ 0.03 ส่วนต่อล้านส่วน และตรงกับเลขฐานสิบของ π เพียง 7 หลักแรก ส่วนต่างนี้เรียกว่าค่าคลาดเคลื่อนของความไม่ต่อเนื่อง (discretization error) และถูกจำกัดโดยเอปไซลอนเครื่องจักร (machine epsilon)
ผลต่างเชิงเลขคณิตระหว่างจำนวนจุดลอยตัวสองจำนวนที่สามารถแทนค่าได้และอยู่ติดกันตามลำดับ ซึ่งมีเลขชี้กำลังเดียวกัน ผลต่างนี้เรียกว่า หน่วยในตำแหน่งสุดท้าย (unit in the last place: ULP) ตัวอย่างเช่น ถ้าหากไม่มีจำนวนที่แทนค่าได้อยู่ระหว่าง 1.45a70c2216 กับ 1.45a70c2416 หน่วยในตำแหน่งสุดท้ายก็คือ 2×16−8 หรือเท่ากับ 2−31 สำหรับจำนวนที่มีเลขชี้กำลังเป็น 0 หน่วยในตำแหน่งสุดท้ายจะเท่ากับ 2−23 หรือประมาณ 10−7 ในความเที่ยงหนึ่งเท่า และประมาณ 10−16 ในความเที่ยงสองเท่า พฤติกรรมที่ถูกกำหนดของฮาร์ดแวร์ที่ยอมรับมาตรฐาน IEEE คือผลลัพธ์ต้องอยู่ภายในครึ่งหนึ่งของหน่วยในตำแหน่งสุดท้าย
จำนวนที่แทนได้ การแปลง และการปัดเศษ > วิธีการปัดเศษ

การปัดเศษจะถูกใช้เมื่อผลลัพธ์ที่ถูกต้องที่ได้จากการดำเนินการจำนวนจุดลอยตัว (หรือการแปลงเป็นรูปแบบจุดลอยตัว) มีเลขโดดมากเกินกว่าที่จะเก็บได้ในซิกนิฟิแคนด์ การปัดเศษมีวิธีการหลายแบบที่ต่างกัน แนวทางทั่วไปในอดีตคือการปัดเศษทิ้ง (truncation) และตั้งแต่มีการแนะนำ IEEE 754 แบบวิธีเริ่มต้นคือการปัดเศษเลขคู่ใกล้สุด หรือเรียกว่าการปัดเศษของนักธนาคาร (Banker's Rounding) มีใช้อย่างปกติสามัญมากกว่า แบบวิธีนี้จะปัดเศษผลลัพธ์ในอุดมคติ (ที่มีความเที่ยงอนันต์) จากการดำเนินการเลขคณิต ไปสู่จำนวนที่สามารถแทนค่าได้ที่ใกล้ที่สุด และให้ผลเป็นการแทนค่านั้นออกมา ในกรณีที่ผลลัพธ์อยู่กึ่งกลาง ค่าที่มีซิกนิฟิแคนด์ลงท้ายเป็นเลขคู่จะถูกเลือก มาตรฐาน IEEE 754 กำหนดว่าจำเป็นต้องใช้วิธีการปัดเศษเดียวกันในทุก ๆ การดำเนินการพีชคณิตพื้นฐาน ซึ่งรวมถึงรากที่สองและการแปลงจำนวน เมื่อผลลัพธ์เป็นค่าเชิงตัวเลข สิ่งนี้หมายความว่า ผลลัพธ์จากการดำเนินการ IEEE 754 จะถูกพิจารณาทุกบิตในผลลัพธ์ ยกเว้นค่า NaN (ฟังก์ชัน "ไลบรารี" อาทิโคไซน์หรือลอการิทึมไม่ถูกบังคับ)
วิธีการปัดเศษทางเลือกอื่นก็มีให้ใช้ได้ IEEE 754 ได้ระบุวิธีการปัดเศษไว้ดังนี้
ปัดเศษสู่ค่าใกล้สุด ซึ่งค่าที่อยู่กึ่งกลางจะปัดเศษสู่เลขโดดที่เป็นเลขคู่ที่อยู่ใกล้สุดในตำแหน่งที่ต้องการ (วิธีการปริยายและปกติสามัญที่สุด)
ปัดเศษสู่ค่าใกล้สุด ซึ่งค่าที่อยู่กึ่งกลางจะปัดเศษในทิศทางออกจากศูนย์ (เป็นทางเลือกสำหรับจำนวนจุดลอยตัวฐานสอง และเป็นปกติสามัญในฐานสิบ)
ปัดเศษขึ้น (ในทิศทางเข้าสู่ +∞ ดังนั้นค่าลบจะปัดเศษเข้าหาศูนย์)
ปัดเศษลง (ในทิศทางเข้าสู่ −∞ ดังนั้นค่าลบจะปัดเศษออกจากศูนย์)
ปัดเศษเข้าหาศูนย์ (การปัดเศษทิ้ง คล้ายพฤติกรรมปกติในการแปลงจำนวนจุดลอยตัวเป็นจำนวนเต็ม เช่นจาก −3.9 เป็น −3)
แบบวิธีทางเลือกต่าง ๆ มีประโยชน์เมื่อจำนวนของค่าคลาดเคลื่อนต้องถูกจำกัดขอบเขต การประยุกต์ที่จำเป็นต้องใช้ค่าคลาดเคลื่อนที่จำกัดขอบเขต คือจำนวนจุดลอยตัวหลายความเที่ยง และเลขคณิตอันตรภาค (interval aritmetics)
การใช้งานการปัดเศษเพิ่มเติมคือ การปัดเศษจำนวนให้มีจำนวนหลักที่ต้องการในฐานสิบ (หรือฐานสอง) เช่นในการปัดเศษผลลัพธ์สกุลเงิน (จุดทศนิยมสองหลัก)
การดำเนินการเลขคณิตจุดลอยตัว

เพื่อความง่ายในการนำเสนอและการทำความเข้าใจ ตัวอย่างต่อไปนี้จะใช้เลขฐานสิบที่มีความเที่ยง 7 หลัก ตามที่ระบุไว้ใน IEEE 754 รูปแบบฐานสิบ 32 บิต หลักการพื้นฐานนั้นเหมือนกันในฐานหรือความเที่ยงใด ๆ เว้นแต่การทำให้เป็นบรรทัดฐานเป็นทางเลือกที่ไม่บังคับ (มันไม่ส่งผลต่อค่าเชิงจำนวนของผลลัพธ์) s ในที่นี้หมายถึงซิกนิฟิแคนด์และ e คือเลขชี้กำลัง
การดำเนินการเลขคณิตจุดลอยตัว > การบวกและการลบ

วิธีการอย่างง่ายในการบวกจำนวนจุดลอยตัวคือ อันดับแรกต้องทำเลขชี้กำลังให้เหมือนกันเสียก่อน จากตัวอย่างต่อไปนี้ จำนวนที่สองถูกเลื่อนจุดฐานไปทางขวาสามหลัก จากนั้นจึงกระทำการบวกธรรมดา
123456.7 = 1.234567 × 10^5
  101.7654 = 1.017654 × 10^2 = 0.001017654 × 10^5
ดังนั้น
  123456.7 + 101.7654 = (1.234567 × 10^5) + (1.017654 × 10^2)
                      = (1.234567 × 10^5) + (0.001017654 × 10^5)
                      = (1.234567 + 0.001017654) × 10^5
                      =  1.235584654 × 10^5
โดยรายละเอียด
e=5;  s=1.234567     (123456.7)
+ e=2;  s=1.017654     (101.7654)
e=5;  s=1.234567
+ e=5;  s=0.001017654  (หลังจากเลื่อนจุดฐานแล้ว)
--------------------
  e=5;  s=1.235584654  (ผลบวกแท้จริง 123558.4654)
ผลบวกนี้เป็นค่าแท้จริงที่ถูกต้องแม่นยำ มันจะถูกปัดเศษให้เหลือเพียงเจ็ดหลัก แล้วทำให้เป็นบรรทัดฐานหากจำเป็น ดังนั้นผลลัพธ์สุดท้ายคือ
e=5;  s=1.235585    (ผลลัพธ์สุดท้าย 123558.5)
สังเกตว่าสามหลักสุดท้ายจากการบวก (654) สูญเสียไปอย่างสำคัญ สิ่งนี้เรียกว่าค่าคาดเคลื่อนการปัดเศษ (round-off error) ในกรณีสุดขีด ผลบวกของจำนวนสองจำนวนที่ไม่เป็นศูนย์อาจเท่ากับค่าเดิมของจำนวนใดจำนวนหนึ่ง
e=5;  s=1.234567
+ e=-3; s=9.876543
e=5;  s=1.234567
+ e=5;  s=0.00000009876543 (หลังจากเลื่อนจุดฐานแล้ว)
----------------------
  e=5;  s=1.23456709876543 (ผลบวกแท้จริง)
  e=5;  s=1.234567         (หลังจากปัดเศษ/ทำให้เป็นบรรทัดฐาน)
อีกตัวอย่างหนึ่งของปัญหาการสูญเสียนัยสำคัญ เกิดขึ้นในการลบสองจำนวนที่มีค่าใกล้เคียงกัน จากตัวอย่างนี้ e = 5; s = 1.234571 และ e = 5; s = 1.234567 เป็นการแทนค่าของจำนวนตรรกยะ 123457.1467 และ 123456.659 ตามลำดับ
e=5;  s=1.234571
− e=5;  s=1.234567
----------------
  e=5;  s=0.000004
  e=−1; s=4.000000 (หลังจากปัดเศษ/ทำให้เป็นบรรทัดฐาน)
การแทนค่าที่ดีที่สุดของผลต่างนี้ควรเป็น e = −1; s = 4.877000 ซึ่งต่างจากผลลัพธ์ e = −1; s = 4.000000 อยู่มากกว่า 20% ในกรณีสุดขีด ผลลัพธ์สุดท้ายอาจกลายเป็นศูนย์แม้ว่าการคำนวณที่แท้จริงอาจได้ค่าหลายล้าน การสูญเสียนัยสำคัญเช่นนี้แสดงให้เห็นถึงความอันตรายในการสมมติว่า เลขโดดทุกหลักของผลลัพธ์ที่คำนวณได้ล้วนมีความหมาย การรับมือต่อผลสืบเนื่องของค่าคลาดเคลื่อนเหล่านี้เป็นหัวข้อศึกษาอันหนึ่งในการวิเคราะห์เชิงตัวเลข (numerical analysis) ดูเพิ่มที่ ปัญหาความแม่นยำ
การดำเนินการเลขคณิตจุดลอยตัว > การคูณและการหาร

การคูณกระทำได้โดยคูณซิกนิฟิแคนด์ทั้งสอง และบวกเลขชี้กำลังเข้าด้วยกัน ผลลัพธ์ที่ได้จะถูกปัดเศษและทำให้เป็นบรรทัดฐาน
e=3;  s=4.734612
× e=5;  s=5.417242
-----------------------
  e=8;  s=25.648538980104 (ผลคูณแท้จริง)
  e=8;  s=25.64854        (หลังจากปัดเศษ)
  e=9;  s=2.564854        (หลังจากทำให้เป็นบรรทัดฐาน)
การหารก็กระทำด้วยวิธีที่คล้ายกันนี้ แต่ซับซ้อนมากกว่า
การคูณและการหารไม่เกิดปัญหาการสูญเสียหรือการดูดกลืนนัยสำคัญ แม้ว่าค่าคลาดเคลื่อนจำนวนน้อยอาจถูกสะสมในการดำเนินการที่กระทำซ้ำ ๆ ในทางปฏิบัติ แนวทางของการดำเนินการเหล่านี้ค่อนข้างซับซ้อนในตรรกะดิจิทัล ดูที่ขั้นตอนวิธีการคูณของบูทและการหารเชิงดิจิทัล สำหรับวิธีการที่รวดเร็วและง่าย ดูที่แบบแผนของฮอร์เนอร์
การรับมือกับกรณีผิดปรกติ

การคำนวณจำนวนจุดลอยตัวในคอมพิวเตอร์สามารถทำให้เกิดปัญหาสามประเภทได้แก่
การดำเนินการที่ไม่ถูกต้องในทางคณิตศาสตร์ เช่นการหารด้วยศูนย์
การดำเนินการที่ถูกต้องในหลักการ แต่ไม่รองรับโดยรูปแบบที่กำหนด ตัวอย่างเช่น การคำนวณรากที่สองของ −1 หรืออินเวิร์สไซน์ของ 2 (ทั้งสองให้ผลเป็นจำนวนเชิงซ้อน)
การดำเนินการที่ถูกต้องในหลักการ แต่ผลลัพธ์ที่ได้ไม่สามารถแทนค่าในรูปแบบที่กำหนดได้เลย เนื่องจากเลขชี้กำลังมีขนาดใหญ่หรือเล็กเกินกว่าที่จะเข้ารหัสลงในเขตข้อมูลเลขชี้กำลัง เหตุการณ์เช่นนี้มีทั้ง ภาวะมากเกินเก็บ (overflow เลขชี้กำลังใหญ่เกินไป) ภาวะน้อยเกินเก็บ (underflow เลขชี้กำลังเลขเกินไป) หรือการทำจำนวนให้ต่ำกว่าบรรทัดฐาน (denormalization สูญเสียความเที่ยง)
ก่อนที่จะมีมาตรฐาน IEEE เงื่อนไขดังกล่าวมักทำให้โปรแกรมหยุดทำงาน หรือกระตุ้นให้เกิดกับดัก (trap) ที่โปรแกรมเมอร์สามารถตรวจจับได้ แนวทางที่สิ่งนี้ทำงานขึ้นอยู่กับระบบ หมายความว่าโปรแกรมที่ใช้จำนวนจุดลอยตัวจะไม่สามารถย้ายไปทำงานบนเครื่องอื่นได้
มาตรฐานต้นฉบับ IEEE 754 (พ.ศ. 2527) เป็นก้าวแรกของวิธีการมาตรฐานสำหรับการดำเนินงานตาม IEEE 754 ในการบันทึกข้อผิดพลาดเกิดขึ้น ต่อไปนี้เราจะไม่พิจารณาการตรวจจับกับดัก (ซึ่งเป็นทางเลือกในรุ่น พ.ศ. 2527) และ "โหมดการจัดการสิ่งผิดปรกติแบบอื่น" (ซึ่งมาแทนที่การตรวจจับกับดักในรุ่น พ.ศ. 2551 แต่ก็ยังคงเป็นทางเลือก) แต่พิจารณาแค่แบบวิธีที่จำเป็นในการจัดการสิ่งผิดปรกติตาม IEEE 754 สิ่งผิดปรกติเชิงเลขคณิตต้องถูกบันทึกลงในบิตแสดงความผิดพลาดแบบ "ยึดติด" โดยปริยาย คำว่า "ยึดติด" หมายความว่า บิตแสดงความผิดพลาดจะไม่ถูกตั้งใหม่โดยการดำเนินการเลขคณิตถัดไป แต่จะยังคงมีค่าอยู่จนกว่าสั่งให้ตั้งใหม่อย่างแน่ชัด โดยปกติแล้วการดำเนินการหนึ่ง ๆ จะให้ผลลัพธ์ตามข้อกำหนดเสมอโดยไม่ยับยั้งการคำนวณ ตัวอย่างเช่น 1/0 ให้ผลลัพธ์เป็น +∞ พร้อมตั้งค่าบิตความผิดพลาดของการหารด้วยศูนย์ด้วย
อย่างไรก็ตามมาตรฐานต้นฉบับ IEEE 754 มิได้แนะนำการดำเนินการต่าง ๆ เพื่อจัดการกับกลุ่มของบิตความผิดพลาดเหล่านั้น ดังนั้นเมื่อสิ่งเหล่านี้ถูกพัฒนาในฮาร์ดแวร์ การทำให้เกิดผลจากภาษาโปรแกรมแต่เริ่มแรกจึงไม่ได้จัดเตรียมมาตรการเพื่อเข้าถึงมัน (นอกจากแอสเซมเบลอร์) ในเวลาต่อมามาตรฐานของภาษาโปรแกรมบางภาษา (เช่นภาษาซีหรือภาษาฟอร์แทรน) ได้ปรับปรุงเพื่อระบุแบบวิธีสำหรับเข้าถึงและเปลี่ยนแปลงสถานภาพกับบิตความผิดพลาด มาตรฐาน IEEE 754 รุ่น พ.ศ. 2551 ที่ใช้อยู่ในปัจจุบันจึงได้ระบุการดำเนินการบางชนิดสำหรับเข้าถึงและจัดการบิตความผิดพลาดเชิงเลขคณิต ตัวแบบการเขียนโปรแกรมที่มีพื้นฐานการทำงานเทร็ดเดียวแต่ถูกใช้โดยหลายเทร็ด จะต้องมีมาตรการเกี่ยวกับภาวะพร้อมกันนอกเหนือไปจากมาตรฐาน
IEEE 754 กำหนดความผิดพลาดเชิงเลขคณิตห้าประการที่ต้องถูกบันทึกในบิตความผิดพลาดที่ "ยึดติด" ดังนี้
ไม่แม่นยำ (inexact) บิตนี้จะถูกตั้งค่า ถ้าค่าที่ปัดเศษและส่งคืนจากการดำเนินการ ต่างจากผลลัพธ์แท้จริงในทางคณิตศาสตร์
น้อยเกินเก็บ (underflow) บิตนี้จะถูกตั้งค่า ถ้าค่าที่ปัดเศษมีขนาดเล็ก และ ไม่แม่นยำ ให้ผลเป็นค่าต่ำกว่าบรรทัดฐาน (รวมทั้งศูนย์ด้วย)
มากเกินเก็บ (overflow) บิตนี้จะถูกตั้งค่า ถ้าค่าสัมบูรณ์ของค่าที่ปัดเศษมีขนาดใหญ่เกินกว่าที่จะแทนได้ ค่าที่ส่งคืนอาจเป็นอนันต์หรือจำนวนมากสุดที่แทนค่าได้ ขึ้นอยู่กับวิธีการปัดเศษ
หารด้วยศูนย์ (divide-by-zero) บิตนี้จะถูกตั้งค่า ถ้าผลลัพธ์เป็นค่าไม่จำกัดอันเกิดจากตัวดำเนินการจำกัด ให้ค่าเป็น +∞ หรือ −∞ อย่างใดอย่างหนึ่ง
ไม่สมเหตุสมผล (invalid) บิตนี้จะถูกตั้งค่า ถ้าไม่สามารถคืนค่าผลลัพธ์จำนวนจริงได้อาทิ sqrt(−1) หรือ 0/0 จะคืนค่าเป็น quiet NaN แทน
ปัญหาความแม่นยำ > ความเที่ยงของเครื่องจักร

"ความเที่ยงของเครื่องจักร" หมายถึงปริมาณที่บ่งบอกความแม่นยำของระบบจำนวนจุดลอยตัว เป็นที่รู้จักในชื่อ การปัดเศษหน่วย (unit round-off) หรือ เอปไซลอนเครื่องจักร (machine epsilon) มักจะแสดงด้วย Εmach ค่าของมันขึ้นอยู่กับวิธีการปัดเศษเฉพาะที่ใช้
การปัดเศษเข้าหาศูนย์จะได้
ในขณะที่การปัดเศษสู่ค่าที่ใกล้ที่สุดจะได้
ปริมาณนี้มีความสำคัญเนื่องจากเป็นตัวจำกัดขอบเขตของ ค่าคลาดเคลื่อนสัมพัทธ์ ในการแทนค่าจำนวนจริงใด ๆ x ที่ไม่เป็นศูนย์ภายใต้พิสัยบรรทัดฐานของระบบจำนวนจุดลอยตัว ดังนี้
เชิงอรรถ

↑  ฮาร์ดแวร์คอมพิวเตอร์ไม่จำเป็นต้องคำนวณแล้วได้ค่าที่ถูกต้องแม่นยำ มันเพียงต้องสร้างผลลัพธ์ที่เทียบเท่ากันซึ่งปัดเศษแล้ว แม้ว่าผลที่คำนวณได้เป็นผลลัพธ์ที่มีความเที่ยงอนันต์
↑  ความซับซ้อนอย่างมหาศาลของขั้นตอนวิธีการหารสมัยใหม่ครั้งหนึ่ง นำมาซึ่งความผิดพลาดอันโด่งดัง ชิปอินเทล เพนเทียม รุ่นแรก ๆ มาพร้อมกับชุดคำสั่งการหารที่ให้ผลลัพธ์ไม่ถูกต้องเล็กน้อย แต่ก็มีโอกาสเกิดขึ้นได้ยาก คอมพิวเตอร์จำนวนมากขายออกไปก่อนที่จะค้นพบความผิดพลาดนี้ มีการพัฒนาคอมไพเลอร์รุ่นซ่อมแซมหลายรุ่นเพื่อให้สามารถหลีกเลี่ยงกรณีที่ผิดพลาด จนกระทั่งคอมพิวเตอร์ที่บกพร่องทั้งหลายถูกเปลี่ยนแทนที่ ดูรายละเอียดได้ที่ บั๊ก FDIV ของเพนเทียม
↑  แต่การพยายามคำนวณ cos(π) จะได้ค่า −1 อย่างแม่นยำ เนื่องจากอนุพันธ์ของฟังก์ชัน cos จะมีค่าเข้าใกล้ศูนย์ เมื่ออาร์กิวเมนต์มีค่าเข้าใกล้ π ความไม่แม่นยำของอาร์กิวเมนต์มีผลกระทบเล็กน้อยมากเมื่อเทียบกับช่องว่างจำนวนจุดลอยตัวทางซ้ายและทางขวาของค่า −1 หลังจากปัดเศษแล้วผลลัพธ์จึงแม่นยำ
แหล่งข้อมูลอื่น

Kahan, William and Darcy, Joseph (2001). How Java’s floating-point hurts everyone everywhere. Retrieved September 5, 2003 from http://www.cs.berkeley.edu/~wkahan/JAVAhurt.pdf.
The pitfalls of verifying floating-point computations, by David Monniaux, also printed in ACM Transactions on programming languages and systems (TOPLAS), May 2008: a compendium of non-intuitive behaviours of floating-point on popular architectures, with implications for program verification and testing
Survey of Floating-Point Formats บทสรุปอย่างสั้นของรูปแบบจำนวนจุดลอยตัวที่เคยมีใช้ในอดีต
แหล่งข้อมูลอื่น > หนังสืออ่านเพิ่มเติม

What Every Computer Scientist Should Know About Floating-Point Arithmetic, by David Goldberg, published in the March, 1991 issue of Computing Surveys.
Donald Knuth. The Art of Computer Programming, Volume 2: Seminumerical Algorithms, Third Edition. Addison-Wesley, 1997. ISBN 0-201-89684-2. Section 4.2: Floating Point Arithmetic, pp. 214–264.
Press et al. Numerical Recipes in C++. The Art of Scientific Computing, ISBN 0-521-75033-4.
คอนรัด ทซูเซอ สถาปนิกผู้ประดิษฐ์คอมพิวเตอร์ฐานสองเชิงกลที่สามารถโปรแกรมได้เครื่องแรก ซึ่งทำงานด้วยจำนวนจุดลอยตัวฐานสอง 22 บิต
ซัมซุง เอสจีอาร์-เอ1

ซัมซุง เอสจีอาร์-เอ1
ซัมซุง เอสจีอาร์-เอ1 (อังกฤษ: Samsung SGR-A1) เป็นหุ่นยนต์ทหารคุ้มกันสัญชาติเกาหลีใต้ โดยได้รับการออกแบบมาเพื่อแทนที่แรงงานมนุษย์ในเขตปลอดทหารที่ชายแดนประเทศเกาหลีใต้และเกาหลีเหนือ มันเป็นหุ่นยนต์ระบบประจำที่ฝ่ายป้องกันของบริษัทซัมซุงเทควินซึ่งเป็นบริษัทย่อยของซัมซุง
ประวัติ

ใน ค.ศ. 2006 บริษัทซัมซุงเทควินได้ประกาศตัวหุ่นยนต์ปืนกล 5.56 มม. มูลค่า 200,000 ดอลลาร์ ที่ใช้งานได้ในทุกสภาพอากาศ และสามารถเลือกติดตั้งเกรเนดลันเชอร์สำหรับการป้องกันที่เขตปลอดทหารเกาหลี มันมีความสามารถในการติดตามเป้าหมายเคลื่อนที่ได้หลายเป้าหมายโดยใช้กล้องอินฟราเรดและแสงที่ตามองเห็น ซึ่งอยู่ภายใต้การควบคุมของผู้ปฏิบัติการที่เป็นมนุษย์ ระบบการเฝ้าระวังอัจฉริยะและหุ่นยนต์รักษาความปลอดภัยสามารถระบุเป้าหมายและยิงออกไปได้ไกลกว่าสองไมล์ (3.2 กม.) โดยอัตโนมัติ ซึ่งหุ่นยนต์ได้รับการพัฒนาโดยมหาวิทยาลัยของประเทศเกาหลีใต้โดยใช้ระบบนำแสงคู่และเซ็นเซอร์อินฟราเรดสำหรับการระบุเป้าหมายตั้งแต่ 2.5 ไมล์ (4 กม.) ในเวลากลางวัน และที่ระยะทางประมาณครึ่งหนึ่งในเวลากลางคืน
มันยังเป็นหุ่นยนต์ที่มีอุปกรณ์การสื่อสาร (ไมโครโฟนและลำโพง) โดยรหัสผ่านสามารถแลกเปลี่ยนกับทหารที่เป็นมนุษย์ได้ หากมีคนใช้รหัสผ่านที่ไม่ถูกต้อง หุ่นยนต์ก็สามารถส่งเสียงสัญญาณภัยหรือยิงไปที่เป้าหมายโดยใช้กระสุนยาง หรือปืนกล เค-3 แบบหมุนบนฐาน ปัจจุบันทหารของเกาหลีใต้ในประเทศอิรักต่างใช้หุ่นยนต์เฝ้าฐานนี้เพื่อป้องกันฐานที่พัก
ดูเพิ่ม

ปืนเฝ้าฐาน
แหล่งข้อมูลอื่น

Description on popularmechanics.com เก็บถาวร 2010-01-05 ที่ เวย์แบ็กแมชชีน
ซัมซุง กาแลคซี วิน

| --- | --- |
สโลแกน: All-around Power: It’s a Real Winner!
ซีรีส์: ซัมซุง กาแลคซี
หมายเลขเครื่อง: GT-I8552 (ซิมคู่)
เครือข่ายที่รองรับ: EDGE / GPRS (850 / 900 / 1,800 / 1,900MHZ) HSPA+ 21 / 5.76Mbps
เปิดตัวครั้งแรก: 20 พฤษภาคม พ.ศ. 2556 (GT-I8552)
รูปแบบ: Touchscreen smartphone
น้ำหนัก: 144 g (5.1 oz)
ระบบปฏิบัติการ: Android 4.1.2 with TouchWiz UI
ซีพียู: 1.2 GHz Cortex-A5 quad-core
หน่วยความจำระบบ: 1 GB RAM
หน่วยความจำ: 8 GB
หน่วยความจำภายนอก: micro-SD up to 64 GB
แบตเตอรี่: Li-ion 2000 mAh
จอแสดงผล: 4.7 นิ้ว
กล้องหน้า: 0.3 MP VGA camera
ซัมซุง กาแลคซี วิน (อังกฤษ: Samsung Galaxy Win) หรือบางแห่งใช้ชื่อ กาแลคซีแกรนด์ควอทโตร (อังกฤษ: Galaxy Grand Quattro) เป็นสมาร์ตโฟนที่พัฒนาโดยบริษัทซัมซุงอิเล็กทรอนิกส์ เปิดตัวครั้งแรกเมื่อวันที่ 8 เมษายน พ.ศ. 2556 ซัมซุงกาแลคซีวินมีแกนรูปสี่เหลี่ยม Cortex-A5 ประมวลผล 1.2 GHz และ RAM 1 GB มีหน่วยความจำภายใน 8 GB การ์ดหน่วยความจำ micro-SD สูงสุดได้ถึง 32 GB อุปกรณ์ยังรองรับการเชื่อมต่ออินเทอร์เน็ตผ่าน 2G และ 3G และการเชื่อมต่อไวไฟ รวมถึงระบบนำทาง A-GPS ด้วย Google Maps ระบบปฏิบัติการเครื่อง Android 4.1 (Jelly Bean)
สมาร์ทโฟนรุ่นนี้มีกล้องด้านหลัง 5 MP ที่มีความสามารถของภาพถ่ายความละเอียดสูงและการจับภาพวิดีโอ กล้องด้านหน้าความละเอียด 0.3 MP กล้องด้านหลังความสามารถบันทึกวิดีโอความละเอียด 720×480 30 เฟรมต่อวินาที กล้องมาพร้อมกับแฟลช LED ที่มีความสามารถถ่ายรูปในสภาพแสงน้อยได้
รุ่น > ประเทศอินเดีย

GT-I8552
รุ่น > ประเทศมาเลเซีย

GT-I8552
รุ่น > ประเทศจีน

Galaxy Win Pro(SM-G3812)
Galaxy Win Pro(SM-G3818)
Galaxy Win Pro(SM-G3819)
Galaxy Win Pro(SM-G3819D)
GT-I8558
SCH-I869
รุ่น > ประเทศเกาหลี

SHV-E500S/L
แหล่งข้อมูลอื่น

India Homepage เก็บถาวร 2014-07-20 ที่ เวย์แบ็กแมชชีน
Korea Homepage(SKT)
China Homepage(CMCC)
China Homepage(China Telecom)
China Homepage เก็บถาวร 2014-06-07 ที่ เวย์แบ็กแมชชีน
Korea Homepage(LG U+) เก็บถาวร 2014-06-06 ที่ เวย์แบ็กแมชชีน
ซัมเมอร์ของฉัน 500 วัน ไม่ลืมเธอ

| ซัมเมอร์ของฉัน 500 วัน ไม่ลืมเธอ |
| --- | --- |
โปสเตอร์ภาพยนตร์
กำกับ: Marc Webb
เขียนบท: Scott Neustadter Michael H. Weber
อำนวยการสร้าง: Mason Novick Jessica Tuchinsky Mark Waters Steven J. Wolfe Scott G. Hyman
นักแสดงนำ: Joseph Gordon-Levitt Zooey Deschanel
ผู้บรรยาย: Richard McGonagle
กำกับภาพ: Eric Steelberg
ตัดต่อ: Alan Edward Bell
ดนตรีประกอบ: Mychael Danna Rob Simonsen
ผู้จัดจำหน่าย: Fox Searchlight Pictures
วันฉาย:   17 มกราคม ค.ศ. 2009 (2009-01-17) (Sundance)  7 สิงหาคม ค.ศ. 2009 (2009-08-07) (United States) 
ความยาว: 95 minutes
ประเทศ: United States
ภาษา: English
ทุนสร้าง: $7.5 million
ทำเงิน: $60,722,734
ซัมเมอร์ของฉัน 500 วัน ไม่ลืมเธอ (อังกฤษ: (500) Days of Summer) เป็นภาพยนตร์อเมริกันแนวคอเมดี-ดรามา ในปี ค.ศ. 2009 เขียนบทโดยสก็อตต์ นอยสตัดเตอร์และไมเคิล เอช. เวบเบอร์ กำกับโดย มาร์ค เว็บบ์ สร้างโดยมาร์ก วอเตอส์ และนำแสดงโดยโจเซฟ กอร์ดอน-เลวิตต์และซูอีย์ เดสชาเนล ภาพยนตร์ดำเนินไม่เรียงตามลำดับเวลา โดยมีเรื่องราวเกี่ยวกับชายหนุ่มที่เล่าถึงความทรงจำในการผิดหวังต่อความรัก
ภาพยนตร์ในการผลิตของค่ายอิสระ โดยฟอกซ์เสิร์ชไลต์พิกเจอส์ ได้เป็นตัวแทนจัดจำหน่าย ฉายรอบปฐมทัศน์ที่เทศกาลภาพยนตร์ซันแดนซ์ ค.ศ. 2009 ได้รับเสียงวิจารณ์ด้านบวกและประสบความสำเร็จระยะเวลานาน (sleeper hit) มีรายได้รวมจากทั่วโลก 60 ล้านเหรียญดอลลาร์สหรัฐ จากทุนสร้างเพียง 7.5 ล้านเหรียญดอลลาร์ นักวิจารณ์ชื่นชมว่าเป็นหนึ่งในภาพยนตร์ที่ดีที่สุดในปี ค.ศ. 2009 และได้รับการเปรียบเทียบกับภาพยนตร์อย่าง Annie Hall และ High Fidelity
เนื้อเรื่อง

ภาพยนตร์เรื่องนี้ใช้วิธีการเล่าเรื่องแบบไม่เรียงลำดับเวลา โดยจะตัดสลับไปมาระหว่างเหตุการณ์ในช่วง 500 วันที่ทอมรู้จักกับซัมเมอร์ และใช้แอนิเมชันแสดงตัวเลขบอกลำดับวันที่เหตุการณ์นั้นกำลังถูกเล่าอยู่
ทอม แฮนเซ่น ทำงานเป็นนักเขียนให้บริษัทผลิตการ์ดอวยพรแห่งหนึ่ง ในวันที่ 8 มกราคม ทอมได้รู้จักกับซัมเมอร์ ฟินน์ ผู้ช่วยคนใหม่ของเจ้านายเขา และตกหลุมรักเธอแทบจะในทันที ในคืนหนึ่งที่ร้านคาราโอเกะงานเลี้ยงของบริษัท ทอมและแมคเคนซีเพื่อนของเขานั่งดื่มเหล้าคุยกับซัมเมอร์ถึงเรื่องมุมมองความรัก ทอมเชื่อในเรื่องรักแท้ และการที่ชะตาจะลิขิตให้พบกับคนที่ใช่ เขาและซัมเมอร์สนิทกันมากขึ้นทีละน้อยในเวลาต่อๆมา แม้ซัมเมอร์จะบอกว่าเธอเองไม่เคยเชื่อในเรื่องรักแท้ และไม่คิดที่จะคบใครจริงจัง
หลายเดือนต่อมาหลังจากทั้งคู่มีความสัมพันธ์กัน ทอมทะเลาะกับซัมเมอร์เป็นครั้งแรก เมื่อเขามีเรื่องกับชายหนุ่มที่พยายามมาจีบเธอในบาร์ เมื่อเวลาผ่านไปทั้งคู่เริ่มระหองระแหงกันมากขึ้น จนกระทั่งซัมเมอร์ตัดสินใจบอกเลิก ทอมรับไม่ได้และเริ่มมีอาการซึมเศร้า จนเจ้านายของเขาต้องย้ายให้ไปนั่งทำงานในห้องทำงานเดี่ยว และซัมเมอร์ลาออกจากงาน
ทั้งคู่บังเอิญเจอกันอีกครั้งในงานเลี้ยงแต่งงานของเพื่อนร่วมงานคนหนึ่ง และเต้นรำด้วยกัน ระหว่างกลับบ้านทั้งคู่นั่งติดกันและซัมเมอร์เชิญทอมไปงานเลี้ยงเล็กๆที่อพาร์ทเมนต์ของเธอ ทอมหวังว่าเขาจะขอคืนดีกับซัมเมอร์ ในขณะที่ความเป็นจริง ทอมสังเกตเห็นแหวนหมั้นที่นิ้วนางของซัมเมอร์ และตระหนักได้ว่างานเลี้ยงนั้นมีขึ้นเพื่ออะไร นับจากวันนั้นทอมก็จมอยู่กับความซึมเศร้าถึงขีดสุด และไม่ทำอะไรนอกจากดื่มสุรา วันหนึ่งขณะที่ยังเมาค้าง เขาระเบิดอารมณ์ใส่เจ้านายขณะกำลังประชุมงานกัน และทอมขอลาออกจากงาน
เมื่อเวลาผ่านไป อาการของทอมก็เริ่มดีขึ้น เขาเลิกเมาหัวราน้ำและตั้งใจจะเปลี่ยนไปทำงานเป็นสถาปนิก ซึ่งเขาเรียนจบมาโดยตรง ทอมเริ่มฝึกเขียนแบบและสมัครงานไปตามที่ต่างๆ
วันที่ 488 ซัมเมอร์ได้พบกับทอมในสวนสาธารณะที่เป็นมุมโปรดของทอมในเมือง และเปิดใจคุยกันถึงเรื่องที่ผ่านมา ทอมไม่เข้าใจการตัดสินใจแต่งงานของซัมเมอร์ เธอจึงเปิดเผยว่าเธอเองก็ไม่เคยเชื่อในรักแท้หรือพรหมลิขิต จนกระทั่งได้พบกับชายคนที่ทำให้เธอได้มั่นใจ ซึ่งไม่เคยเกิดขึ้นเลยระหว่างที่เธอคบกับทอม ก่อนจากกัน ทอมอวยพรให้ชีวิตคู่ของซัมเมอร์มีความสุข
วันที่ 500 ทอมมีนัดสัมภาษณ์งานที่สำนักงานสถาปนิกแห่งหนึ่ง และได้พบหญิงสาวหน้าตาดีที่มารอสัมภาษณ์งานเดียวกัน ทั้งคู่สนทนากันและพบว่ามีความชอบเหมือนกันในหลายๆด้าน รวมทั้งหญิงสาวจำทอมได้จากมุมโปรดที่ทอมไปนั่งเป็นประจำด้วย ทอมลังเลอยู่ชั่วครู่ ก่อนก็ตัดสินใจเอ่ยปากชวนหญิงสาวไปทานกาแฟหลังสัมภาษณ์งานเสร็จ หญิงสาวปฏิเสธในทีแรก แต่ก็ตอบตกลงในที่สุด ทั้งคู่จับมือแนะนำตัวกัน หญิงสาวบอกว่าเธอชื่อ "ออทั่ม" (ฤดูใบไม้ร่วง) ภาพยนตร์จบลงที่การย้อนมาเริ่มนับหนึ่งใหม่ กับความสัมพันธ์ที่กำลังจะเริ่มจากนี้
เสียงตอบรับ

ภาพยนตร์ได้รับรางวัลแซเทลไลต์สาขาบทดั้งเดิมยอดเยี่ยมและได้รับรางวัลอินดีเพนเดนต์สปิริตอวอร์ดสาขาบทภาพยนตร์ยอดเยี่ยม และได้เสนอเข้าชิงรางวัลลูกโลกทองคำครั้งที่ 67 สาขาภาพยนตร์ยอดเยี่ยมและนักแสดงยอดเยี่ยม