การแปลงไบต์เป็นเมกะไบต์


103

ฉันได้เห็นสามวิธีในการแปลงจากไบต์เป็นเมกะไบต์:

  1. เมกะไบต์ = ไบต์ / 1000000
  2. เมกะไบต์ = ไบต์ / 1024/1024
  3. เมกะไบต์ = ไบต์ / 1024 / 1,000

ตกลงฉันคิดว่า # 3 ผิดทั้งหมด แต่ฉันได้เห็นแล้ว ฉันคิดว่า # 2 ถูกต้อง แต่ฉันกำลังมองหาผู้มีอำนาจที่น่านับถือ (เช่น W3C, ISO, NIST ฯลฯ ) เพื่อชี้แจงว่าเมกะไบต์ใดเป็นเมกะไบต์ที่แท้จริง ใครสามารถอ้างอิงแหล่งที่มาที่อธิบายอย่างชัดเจนว่าการคำนวณนี้ทำอย่างไร

คำถามโบนัส: ถ้า # 2 เป็นเมกะไบต์ # 1 และ # 3 จะเรียกว่าอะไร?

BTW: ผู้ผลิตฮาร์ดไดรฟ์ไม่นับเป็นหน่วยงานนี้!


3
ผู้ผลิตฮาร์ดไดรฟ์ไม่นับเป็นหน่วยงานในนี้ตราบเท่าที่การใช้งานของพวกเขาเมกะไบต์กับความรู้สึกหมายถึงอันดับ 1 คือการขับรถการยอมรับของแปลงที่ โปรดทราบว่า Microsoft OS ยังคงใช้ Sense # 2 อยู่
Michael Petrotta

3
# 3 ควรเรียกว่าเมกะไบต์ฟล็อปปี้ดิสก์ ฟลอปปี้ขนาด3½นิ้วค่อนข้างโดดเด่นในการใช้สิ่งนี้ (และฉันจำไม่ได้ว่าเคยเห็นมันที่อื่น)
Michael Madsen

16
และข้อบังคับ: xkcd.com/394
Seva Alekseyev

4
ผู้ชายโอ้ผู้ชาย ระหว่างสิ่งนี้กับการเข้ารหัสข้อความบางครั้งฉันก็สิ้นหวังกับความสามารถที่ไม่สิ้นสุดของเราในการเพิ่มข้อบกพร่องที่ซับซ้อนให้กับสิ่งพื้นฐานที่สุด
Paul D. Waite

4
ผู้ผลิตฮาร์ดไดรฟ์มักใช้อันดับ 1 เพื่อให้ได้จำนวนสูงสุด สำหรับ GB ความแตกต่างคือ 7% และสำหรับ TB ความแตกต่างคือ 10%
Peter Mortensen

คำตอบ:


116

ตามเนื้อผ้าโดยเมกะไบต์เราหมายถึงตัวเลือกที่สองของคุณ - 1 เมกะไบต์ = 2 20ไบต์ แต่มันไม่ถูกต้องจริงๆเพราะ mega หมายถึง 1,000 000 มีชื่อมาตรฐานใหม่สำหรับ 2 20ไบต์คือ mebibyte ( http://en.wikipedia.org/wiki/Mebibyte ) และรวบรวมความนิยม


10
ฉันเห็นด้วยกับทั้งหมดนี้ยกเว้นนัยว่ากำลังได้รับความนิยมอย่างมาก ส่วนแบ่งความคิดของ 1024 = K และเพื่อน ๆ สามารถคงกระพันได้อย่างมีประสิทธิภาพ เมื่อคุณทำให้คนเริ่มพูดว่า "แครกเกอร์" แทนที่จะเป็น "แฮ็กเกอร์" ให้ติดต่อกลับมาหาฉัน
TED

5
จะไม่ลงคะแนนสำหรับการกล่าวถึง "mebibyte" ที่ผิดกฏ แต่ต้องใช้ความพยายามอย่างมาก
aehiilrs

3
@TED: ที่จริงแล้วการใช้ "แฮ็กเกอร์" เพื่อหมายถึง "แครกเกอร์" เป็นตัวอย่างที่สมบูรณ์แบบของวัฒนธรรมสมัยนิยมที่ลบล้างการใช้งานที่คนทั่วไปต้องการ
Michael Petrotta

2
มันเป็นความรู้สึกส่วนตัวของฉันที่ mebibyte กำลังได้รับความนิยมฉันคิดผิด ฉันเห็นขนาดไซต์ดาวน์โหลดที่ค่อนข้างเป็นที่นิยมแสดงใน MiB และ KiB
Andrey

1
ฉันเห็นด้วยกับคุณและฉันยังใช้ mega 10 ฐานและ 2-base kibi และ mebi นั่นคือมาตรฐาน IEC สำหรับการใช้เมตริกนั่นคือขั้นสุดท้ายและไม่มีการใช้งานใด ๆ
Zan Lynx

28

มีมาตรฐาน IECที่แยกแยะข้อกำหนดเช่น Mebibyte = 1024 ^ 2 ไบต์ แต่เมกะไบต์ = 1000 ^ 2 (เพื่อให้เข้ากันได้กับหน่วย SI เช่นกิโลกรัมโดยที่ k / M / ... หมายถึง 1,000/1000000) จริงๆแล้วคนส่วนใหญ่ในพื้นที่ไอทีจะชอบ Megabyte = 1024 ^ 2 และผู้ผลิตฮาร์ดดิสก์จะชอบ Megabyte = 1000 ^ 2 (เนื่องจากขนาดของฮาร์ดดิสก์จะฟังดูใหญ่กว่าที่เป็นอยู่)

ตามความเป็นจริงคนส่วนใหญ่จะสับสนกับมาตรฐาน IEC (ตัวคูณ 1000) และความหมายดั้งเดิม (ตัวคูณ 1024) โดยทั่วไปคุณไม่ควรตั้งสมมติฐานว่าผู้คนหมายถึงอะไร ตัวอย่างเช่น 128 kBit / s สำหรับ MP3 มักจะหมายถึง 128000 บิตเนื่องจากตัวคูณ 1000 ส่วนใหญ่จะใช้กับหน่วยบิต แต่คนส่วนใหญ่มักเรียก 2048 kBit / s เท่ากับ 2 MBit / s - สับสนใช่มั้ย?

ตามกฎทั่วไปอย่าเชื่อหน่วยบิต / ไบต์เลย;)


18

BTW: ผู้ผลิตฮาร์ดไดรฟ์ไม่นับเป็นหน่วยงานนี้!

โอ้ใช่พวกเขาทำ (และคำจำกัดความที่พวกเขาคิดจากSIนั้นถูกต้อง) ในประเด็นที่เกี่ยวข้องโปรดดูโพสต์นี้ใน CodingHorror


4
ขออภัยผู้ลงคะแนน แต่คำจำกัดความของ Mega ISถูกต้องไม่ว่าโปรแกรมเมอร์จะคิดอย่างไร ฉันสามารถอยู่กับ M = 2 ^ 20 ได้ แต่นั่นเป็นเพียงเหตุผลทางประวัติศาสตร์
Federico A.Ramponi

+1 สำหรับ moxie ในการยืนหยัดกับ บริษัท HD และมาตรฐาน SI กระตุ้นให้ทุกคนต่อต้าน!
Jeffrey L Whitledge

11
ขอบคุณเจฟฟรีย์ :) แต่ไม่ใช่แค่ บริษัท HD เท่านั้น CPU ของคุณทำ 2600 MHz; ตัวประมวลผลคณิตศาสตร์ของคุณทำ XY Mflops; อีเธอร์เน็ตทำได้ 100 Mbit / s; กล้องของคุณทำได้ 5 Mpixel; ความเร็ว 1x ของ Blu-ray คือ 36 Mbit / s ... "M" ทั้งหมดนี้ย่อมาจาก 10 ^ 6 ไม่ใช่ 2 ^ 20
Federico A.Ramponi

-1 ฉันไม่แน่ใจว่าฉันทำตามคำตอบนี้ ซึ่งผู้ผลิตฮาร์ดไดรฟ์ทำให้ความหมาย? ฉันไม่คิดว่า CodingHorror จะสร้างฮาร์ดไดรฟ์? ฉันกำลังมองหาผู้มีอำนาจและผู้ผลิตฮาร์ดไดรฟ์อาจมีอคติมากเกินไปที่จะเป็นไปตามวัตถุประสงค์
User1

1
"อำนาจ" ที่สนับสนุน M = 10 ^ 6 คือสำนักงานชั่งตวงวัดระหว่างประเทศ เท่าที่ฉันรู้ไม่มี "อำนาจ" ใด ๆ นอกจากธรรมเนียมรองรับ M = 2 ^ 20
Federico A.Ramponi

16

หารด้วย2เพื่ออำนาจของ20, (1024*1024)ไบต์ = 1เมกะไบต์

1024*1024 = 1,048,576   
2^20 = 1,048,576
1,048,576/1,048,576 = 1  

มันคือสิ่งเดียวกัน



3

คำตอบคือ # 1 นั้นถูกต้องในทางเทคนิคตามความหมายที่แท้จริงของคำนำหน้า Mega อย่างไรก็ตาม (และในชีวิตมักจะมีอย่างไรก็ตาม) คณิตศาสตร์ที่ไม่ได้ออกมาดีนักในฐาน 2 ซึ่งเป็นวิธีที่คอมพิวเตอร์นับ ดังนั้น # 2 คือสิ่งที่ผู้คนใช้จริงๆ


2

ใช้การคำนวณที่ผู้ใช้ของคุณคาดหวังมากที่สุด ผู้ใช้ของคุณสนใจที่จะทราบจำนวนไบต์ที่แท้จริงอยู่ในดิสก์หรือในหน่วยความจำหรืออะไรก็ตามหรือพวกเขาสนใจเฉพาะพื้นที่ที่ใช้งานได้เท่านั้น คำตอบสำหรับคำถามนั้นจะบอกให้คุณทราบว่าการคำนวณใดเหมาะสมที่สุด

นี่ไม่ใช่คำถามที่แม่นยำเท่ากับคำถามเกี่ยวกับการใช้งาน ให้การคำนวณที่เป็นประโยชน์กับผู้ใช้ของคุณมากที่สุด


1

เมกะไบต์หมายถึง 2 ^ 20 ไบต์ ฉันรู้ว่าในทางเทคนิคนั้นไม่ได้เชื่อมโยงกับหน่วย SI และบางคนก็มีคำศัพท์ใหม่ที่หมายถึง 2 ^ 20 ไม่มีเรื่องนั้น ความพยายามในการเปลี่ยนภาษาเพื่อ "ชี้แจง" สิ่งต่างๆจะถึงวาระที่จะล้มเหลว

ผู้ผลิตฮาร์ดไดรฟ์ใช้มันเพื่อหมายถึง 1,000,000 ไบต์เพราะนั่นคือความหมายใน SI ดังนั้นพวกเขาจึงคิดว่าในทางเทคนิคพวกเขาไม่ได้โกหก (ในขณะที่พวกเขาเป็นจริง) ที่ตกอยู่ภายใต้การโกหกหลอกลวงและการตลาด


0

โดยทั่วไปแล้วการใช้คำนำหน้า SI ทศนิยม (เช่นกิโลเมกะไบต์) เป็นเรื่องผิดเมื่ออ้างถึงขนาดข้อมูลไบนารี (ยกเว้นในการใช้งานทั่วไป) มันคลุมเครือและทำให้เกิดความสับสน เพื่อความแม่นยำคุณสามารถใช้คำนำหน้าไบนารี (เช่น 1 mebibyte = 1 MiB = 1024 kibibytes = 2 ^ 20 ไบต์) เมื่อมีคนอื่นใช้คำนำหน้า SI ทศนิยมสำหรับข้อมูลไบนารีคุณจำเป็นต้องได้รับข้อมูลเพิ่มเติมก่อนที่คุณจะรู้ว่ามีความหมายอย่างไร

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.