Kebingungan dengan kapasitas penyimpanan (kekuatan 10 dan 2) [duplikat]

23

Saya sedang melihat HDD dan saya menemukan dokumen (dari Toshiba, tautan: 2.5-Inch SATA HDD mq01abdxxx ) yang mengatakan:

"Satu Gigabyte (1GB) berarti 10 ^ 9 = 1.000.000.000 byte menggunakan kekuatan 10. Sistem operasi komputer, bagaimanapun, melaporkan kapasitas penyimpanan menggunakan kekuatan 2 untuk definisi 1GB = 2 ^ 30 = 1.073.741.824 byte, dan karenanya menunjukkan lebih sedikit penyimpanan. kapasitas."

Maka kekuatan 10 lebih besar dari kekuatan 2, OK.

Contoh 10 ^ 2 = 100 dan 2 ^ 2 = 4.

Tapi saya tidak mengerti dokumen yang mengatakan untuk kapasitas penyimpanan yang sama:

1GB adalah 1.000.000.000 byte (kekuatan 10) dan 1.073.741.824 byte (kekuatan 2), maka: ini menunjukkan kapasitas penyimpanan yang lebih kecil (kekuatan 2). Mengapa lebih sedikit? Jika saya melihat untuk kapasitas penyimpanan 1GB lebih banyak dalam kekuatan 2 dari kekuatan 10.

belajar pemrograman
sumber
13
"Mengapa kurang? Jika saya melihat kapasitas penyimpanan 1GB lebih banyak dalam kekuatan 2 dari kekuatan 10." Ketinggian Anda dalam inci memberikan angka yang lebih kecil daripada tinggi yang sama dalam sentimeter, hanya karena ada lebih banyak "kapasitas panjang" dalam inci daripada dalam sentimeter. Jadi, untuk nilai tetap untuk diekspresikan: semakin besar unit, semakin rendah angkanya.
Kamil Maciorowski
4
Tidak kurang, nilainya sama, diwakili oleh dua basis yang berbeda.
Ramhound
2
Anda tidak dapat dengan mudah mengatakan bahwa 10 ^ 2 - 100 dan 2 ^ 2 = 4. Anda harus menghitung berapa 100 yang akan ada di basis 2.
Ramhound
4
"Sistem operasi komputer" - Milik saya tidak ... Atau, sebenarnya, ia menggunakan MB (base10) di GUI, tetapi MiB (base2) di CLI. Hanya untuk menjaga hal-hal menarik.
marcelm
2
Mereka mengatakan bahwa "kekuatan 10" lebih kecil dari kekuatan besarnya yang sama dari 2. Misalnya, 1000 (10 ^ 3) <1024 (2 ^ 10). Dan 1000000 (10 ^ 6) <1048576 (2 ^ 20). Jadi bagi produsen drive, hard drive 1 terabyte Anda memiliki (setidaknya) 1.000.000.000 byte (dan sebenarnya sedikit lebih banyak) sementara untuk utilitas sistem operasi yang melaporkan ruang 1 terabyte adalah 1.099.511.627.776 byte. Jadi OS akan melaporkan hard drive 1TB Anda sebagai 931Gb, atau lebih sedikit. (Atau mungkin tidak, lihat @marcelm di atas.)
davidbak

Jawaban:

58

Alasan historis menggunakan kekuatan 2 adalah bahwa memori dan hard disk diakses oleh CPU menggunakan ruang alamat yang terdiri dari garis-garis pada kode biner. Produsen perangkat keras memutuskan nama dengan cara ini:

2^10 = 1024 and as it's almost 1000 then call it 1 Kilobyte

2^20 = 1048576 bytes and as it's almost 1000000 then call it 1 Megabyte

Untuk pengguna normal, itu tidak masuk akal dan tidak praktis. Selain itu awalan "kilo", "mega", dll. Bertentangan dengan standar Sistem Satuan Internasional (SI) di mana "1 kiloWatt" berarti 10 ^ 3 atau 1000 Watt.

Untuk mengatasi masalah tersebut, pada tahun 2000 Komisi Elektroteknik Internasional atau IEC mengusulkan skema notasi untuk unit-unit yang didasarkan pada kekuatan 2 berdasarkan norma ISO / IEC 80000-13 .

Nama-nama baru dibuat dengan mengganti suku kata kedua di nama lama dengan 'bi' (merujuk ke '2'). Satu kilobyte sekarang harus menjadi kibibyte dan sebagainya. Unit baru juga mendapat simbol yang sesuai, jadi '10 kibibyte 'sekarang ditulis sebagai 10 KiB, bukan 10 kB . Ini adalah tabel korespondensi:

Notation      Symbol    Value
1 kilobyte    1 kB      10^3  = 1000 bytes
1 megabyte    1 MB      10^6  = 1000000 bytes
1 gigabyte    1 GB      10^9  = 1000000000 bytes
1 terabyte    1 TB      10^12 = 1000000000000 bytes


1 kibibyte    1 KiB     2^10 = 1024 bytes
1 mebibyte    1 MiB     2^20 = 1048576 bytes
1 gibibyte    1 GiB     2^30 = 1073741824 bytes
1 tebibyte    1 TiB     2^40 = 1099511627776 bytes

16 tahun kemudian banyak vendor perangkat keras dan perangkat lunak masih merujuk ke unit-2 basis dengan nama SI mereka . "Megabyte" dapat berarti 1000000 byte atau 1048576 byte.

Jika Anda membeli hard drive 100 GB, kapasitasnya adalah 100x10 ^ 9 atau 10 ^ 11 byte. Tapi, dan ini yang besar tetapi, sistem operasinya hanya akan melaporkan drive tersebut memiliki kapasitas 93 GB (10^11)/(2^30). Anda membeli drive 100 gigabyte , yang setara dengan drive 93 gibibyte . Sistem operasi adalah yang menggunakan notasi yang salah.

Pembuat drive menyembunyikan masalah ini dengan penafian dan penjelasan yang selalu mengarah pada kesimpulan bahwa "kapasitas yang diformat aktual mungkin lebih sedikit".

jcbermu
sumber
1
Komentar bukan untuk diskusi panjang; percakapan ini telah dipindahkan ke obrolan .
Journeyman Geek
21

Singkatnya: itu semua tentang pemasaran.

jcbermu menjelaskan dengan baik, tapi aku tidak setuju dengan alasan di balik semua itu.

Sementara setiap sistem informatika menggunakan sistem biner, bit & byte ditulis sebagai ^ 2, yang normal. Jadi ini bukan sistem operasi atau perangkat lunak yang salah karena kebingungan. Semuanya biner di sini.

Ini kesalahan produsen HDD untuk menyatakan kapasitas HDD dalam sistem ^ 10, yang merampas Anda dari beberapa GB praktis. HDD 20GB sebenarnya dapat menyimpan 18GB dan seterusnya ... drive 1TB sebenarnya ~ 930GB. Cemoohan 'bibyte' diciptakan untuk mencoba mencegah beberapa kebingungan tetapi benar-benar gagal untuk diadopsi secara praktis.

Overmind
sumber
10
Itu karena byte pada disk "diselesaikan setelah pengiriman".
davidbak
2
Benar. Saya tidak pernah mendengar ada yang mengatakan "Saya telah meningkatkan ke 16 gibi RAM". Saya tidak berpikir produsen bertanggung jawab atas kekacauan ini, tetapi mereka pasti untung karenanya. Kembali di 80-an dan 90-an, pengguna komputer tahu apa Perbedaan antara kilogram dan kilobyte dan mengapa. Saat ini, siapa yang tahu bahwa komputer beroperasi pada aritmatika biner?
Crowley
4
Ini bukan tentang pemasaran, dan tidak pernah ada. Hard drive dan disket selalu dijual menggunakan awalan SI nyata, karena tidak pernah masuk akal untuk menggunakan pangkalan lain.
pipa
1
-1, mengerikan. It's the fault of HDD manufacturers to state the HDD capacities in ^10 system, which robs you of quite some practical GB.Tidak, kedua hal itu tidak benar. Produsen HD adalah mereka yang telah melakukannya dengan benar, menggunakan definisi unit yang sebenarnya dan benar. Bukan salah mereka bahwa pengembang, produsen memori, dan siapa pun yang telah menggunakan unit SI secara tidak akurat. Dan, tentu saja, apa unit ruang penyimpanan diukur tidak "merampas Anda dari beberapa GB praktis" atau benar-benar mengubah kapasitas dengan cara apa pun.
HopelessN00b
1
@pipe: Floppy 720KB menampung masing-masing 1.440 blok masing-masing 512 byte. Begitu juga dengan ukuran lain yang diukur dalam KB. Sejauh yang saya tahu, arti paling umum dari "MB" dengan media penyimpan yang magnetis adalah 1.024.000 byte, membuat disket 1,44MB persis dua kali lebih besar dari yang 720KB.
supercat
16

Jawaban jcbermu bagus, tetapi saya ingin mendekati ini dari sudut yang berbeda.

1GB adalah 1.000.000.000 byte (kekuatan 10) dan 1.073.741.824 byte (kekuatan 2), maka: ini menunjukkan kapasitas penyimpanan yang lebih kecil (kekuatan 2). Kenapa kurang? Jika saya melihat untuk kapasitas penyimpanan 1GB lebih banyak dalam kekuatan 2 dari kekuatan 10.

Media penyimpanan - media penyimpanan apa pun - dapat menyimpan sejumlah bit yang dapat diakses. Biasanya dalam komputasi tujuan umum, itu dinyatakan sebagai byte atau beberapa byte, tetapi jika Anda mulai melihat IC memori misalnya (sirkuit terintegrasi, chip), Anda akan melihat kapasitas memorinya dinyatakan dalam bentuk bit yang dapat diakses.

Hard disk akan menyimpan sejumlah bit atau byte tertentu yang, karena alasan teknis, dibahas dalam hal sektor. Sebagai contoh, drive 4 TB mungkin memiliki 7.814.037.168 sektor masing-masing 512 byte, yang berfungsi untuk kapasitas penyimpanan 4.000.787.030.016 byte. Itulah yang sebenarnya Anda dapatkan. (Dalam praktiknya, Anda kemudian kehilangan sebagian dari itu karena informasi pembukuan komputer: sistem file, jurnal, partisi, dll. Namun, byte masih ada, Anda tidak dapat menggunakannya untuk menyimpan file, karena mereka diperlukan untuk menyimpan data yang secara efektif memungkinkan Anda untuk menyimpan file.)

Tentu saja, angka 4.000.787.030.016 agak sulit digunakan. Karena itu, kami memilih untuk mewakili informasi ini dengan cara lain. Tetapi seperti yang diilustrasikan oleh jcbermu, kami memilih untuk melakukannya dengan dua cara berbeda: dalam kekuatan sepuluh, atau kekuatan dua.

Dalam kekuatan sepuluh, 4.000.787.030.016 byte adalah 4.000787030016 * 10 ^ 12 byte, yang membulatkan dengan cukup baik; dengan empat digit signifikan, membulatkan ke 4,001 TB, untuk definisi SI "tera": 10 ^ 12. Hard disk kami dapat menyimpan lebih dari 4 * 10 ^ 12 byte, jadi dalam istilah SI, ini adalah perangkat penyimpanan 4 terabyte.

Dalam kekuatan dua, 4.000.787.030.016 byte adalah 3.638694607 * 2 ^ 40 byte, yang tidak membulatkan dengan sangat baik. Itu juga terlihat seperti jumlah yang lebih kecil, karena 3,639 kurang dari 4,001, dan itu buruk untuk pemasaran (siapa yang ingin membeli drive 3,6 TB ketika pabrik sebelah menjual drive 4,0 TB dengan harga yang sama?). Ini adalah awalan biner 3,6 "tebibytes", di mana "bi" menunjukkan bahwa itu adalah kuantitas basis-dua.

Namun dalam kenyataannya, jumlah byte yang persis sama; jumlahnya hanya dinyatakan berbeda! Jika Anda menghitung lagi, Anda akan melihat bahwa 3.638694607 * 2 ^ 40 = 4.000787030016 * 10 ^ 12, sehingga Anda mendapatkan kapasitas penyimpanan yang sama pada akhirnya.

sebuah CVn
sumber
1
Dijelaskan dengan baik, tetapi jumlah sektor (seperti 7,8 [...] dalam contoh Anda) dipilih oleh produsen sehingga kapasitas berakhir pada nilai yang diinginkan. Mereka hanya bisa menghasilkan 8 Miliar sektor, 8589934592 atau angka lain untuk berakhir dengan nilai kapasitas yang sebenarnya, tetapi itu tidak baik untuk bisnis. Karena perbedaannya secara teknis memungkinkan, sebagai pabrikan saya akan membuat pasar besar: logo TrueCapacity (r) atau TrueSpace (r) dan dijamin penjualan akan meningkat karena manuver pemasaran ini dan pabrikan lain akan harus mengikuti (dan tidak siap untuk melakukannya).
Overmind
@Overmind: Itu adalah salah satu teknik pemasaran yang memungkinkan. Mirip dengan Aerial Communications yang memiliki tagihan per detik (sebelum T-Mobile membelinya). Jika Anda bertanggung jawab atas pemasaran untuk produsen perangkat penyimpanan, saya kira strategi itu bisa menjadi salah satu yang Anda pertimbangkan untuk dikejar.
TOOGAM
Saya menemukan jawaban ini untuk memberikan saya kejelasan yang paling (mungkin). Jadi, tidak ada kebutuhan sebenarnya untuk itu menjadi kekuatan 2? Tidak ada yang istimewa tentang sebagian besar penyimpanan ukuran sedang menjadi kekuatan 2?
Abdul
1
@Abdul Sebagian besar (konsumen) perangkat penyimpanan memiliki kapasitas yang dapat diakses pengguna yang tidak , dalam hal byte (atau dengan implikasi juga bit), kekuatan dua. Seperti Overmind yang disebutkan di atas, kapasitas tepat HDD sebagian besar dapat dipilih secara acak asalkan memenuhi persyaratan penandaan. SSD cenderung lebih dekat ke 2 ^ n, karena chip memori flash dibuat dalam ukuran yang sering dalam kekuatan penuh dua (karena mereka memiliki garis alamat dan hal-hal seperti itu yang membuat keuntungan), tetapi karena terlalu banyak penyediaan tidak semua kapasitas flash akan dapat diakses dari perangkat lunak eksternal ke pengontrol blitz internal.
CVn
5

Jawaban lain telah membahas alasan historis untuk perbedaan tersebut, tetapi bagi saya sepertinya Anda bertanya tentang perbedaan menurut matematika.

Anda benar bahwa satu kekuatan 10 lebih besar dari satu kekuatan 2, dan sebaliknya satu gigabyte (10 ^ 9 byte) lebih kecil dari satu gibibyte (2 ^ 30 byte).

Pembalikan ukuran dijelaskan oleh fakta bahwa ada lebih banyak kekuatan dalam satu gibibyte (30 kekuatan) daripada ada kekuatan dalam satu gigabyte (9 kekuatan). Ternyata jumlah kekuatan memiliki efek yang lebih besar pada ukuran akhir daripada ukuran masing-masing kekuatan individu.

Mengenai mengapa ukuran disk yang dilaporkan lebih kecil bila diukur dalam gibibytes (2 ^ 30) daripada bila diukur dalam gigabytes (10 ^ 9), adalah alami daripada ketika mengukur kuantitas tetap bahwa unit ukuran yang lebih besar memberikan jumlah yang lebih kecil . Misalnya, pertimbangkan tinggi dalam inci versus tinggi dalam sentimeter. Karena satu inci lebih besar dari satu sentimeter, tinggi yang sama akan mengukur lebih sedikit inci (misalnya 72 inci) daripada sentimeter (misalnya 183 sentimeter). Ketinggian adalah jarak fisik yang sama di kedua kasus, tetapi setiap pengukuran hanya memberikan angka yang berbeda sesuai dengan satuan ukuran.

Edward Peek
sumber