Byte

Byte (đọc là bai-(tơ)) là một đơn vị lưu trữ dữ liệu cho máy tính, bất kể loại dữ liệu đang được lưu trữ. Nó cũng là một trong những kiểu dữ liệu (data type) trong nhiều ngôn ngữ lập trình.

Ý nghĩa

Bội số của byte
theo IEC 60027-2
Tiền tố SI Tiền tố nhị phân
Tên Ký hiệu Bội số Tên Ký hiệu Bội số
kilobyte kB 103 (hay 210) kibibyte KiB 210
megabyte MB 106 (hay 220) mebibyte MiB 220
gigabyte GB 109 (hay 230) gibibyte GiB 230
terabyte TB 1012 (or 240) tebibyte TiB 240
petabyte PB 1015 (hay 250) pebibyte PiB 250
exabyte EB 1018 (hay 260) exbibyte EiB 260
zettabyte ZB 1021 (hay 270)
yottabyte YB 1024 (hay 280)

Chữ "byte" có một số nghĩa, đều liên quan đến nhau:

  1. Một dãy số liền nhau của một số bit cố định. Trong đại đa số các máy tính hiện đại, byte có 8 bit (octet). Tuy nhiên, không phải máy nào đều cũng dùng byte có 8 bit. Một số máy tính đời cũ đã dùng 6, 7, hay 9 bit trong một byte - một thí dụ là trong cấu trúc 36 bit của bộ máy PDP-10. Một ví dụ khác là đơn vị slab của bộ máy NCR-315. Một byte luôn luôn không chia rời được, nó là đơn vị nhỏ nhất có thể truy nhập được. Một byte 8 bit có thể biểu thị được 256 giá trị khác nhau (28 = 256) -- đủ để lưu trữ một số nguyên không dấu từ 0 đến 255, hay một số có dấu từ -128 đến 127, hay một ký tự dùng mã 7 bit (như ASCII) hay 8 bit.
  2. Một dãy bit tạo thành một "sub-field" của một dãy số dài hơn được gọi là "word". Một số máy tính cho phép truy nhập byte có độ dài tùy ý. Trong các câu lệnh assembly LDB và DPB của bộ máy PDP-10, còn tồn tại dưới dạng phép tính từng byte trong Lisp Phổ thông; và byte 6 bit của bộ máy IBM 1401.
  3. Một kiểu dữ liệu hay một từ đồng nghĩa cho một kiểu dữ liệu trong một số ngôn ngữ lập trình. Trong C, byte được định nghĩa là một đơn vị có thể chứa được bất cứ một ký tự nào trong môi trường hoạt động (điều khoản 3.5 trong tiêu chuẩn C). Vì kiểu dữ liệu số nguyên char có thể lưu trữ ít nhất 8 bit (điều khoản 5.2.4.2.1), một byte trong C có thể giữ được ít nhất 256 giá trị khác nhau (char không phân biệt có dấu hay không có dấu). Kiểu dữ liệu nguyên thủy byte trong Java được định nghĩa có 8 bit và là một kiểu dữ liệu có dấu, có thể lưu giá trị tự -128 đến 127.

Nguồn gốc tên

Thuật ngữ byte được Werner Buchholz đặt ra trong năm 1956 trong giai đoạn thiết kế ban đầu cho hệ thống IBM 7030. Thoạt tiên nó được mô tả là 1 đến 6 bit; các thiết bị I/O thời đó dùng đơn vị 6 bit. Cuối năm 1956, một byte đã được đổi thành 8 bit, và độ lớn này đã được phổ thông hóa trong hệ thống System/360. Từ này được đặt ra bằng cách đổi cách viết chữ bite (cắn, một lối chơi chữ với chữ bit - miếng) để nó khỏi bị viết sai thành bit.

Các tên khác

Byte 8 bit còn thường được gọi là octet (bộ tám) trong ngữ cảnh chính thức như các tài liệu tiêu chuẩn, hay trong mạng máy tínhviễn thông. Từ này cũng được sử dụng trong thuật ngữ của một số ngôn ngữ không phải tiếng Anh khi lối chơi chữ bite không có nghĩa.

Một nửa byte 8 bit (4 bit) đôi khi còn được gọi là nibble (gặm). Nibble còn được gọi là semioctet (nửa octet) trong ngữ cảnh mạng máy tính và viễn thông cũng như bởi một số tổ chức tiêu chuẩn.

Cụm 32 bit được gọi là một word. Cụm tương ứng 64bit gọi là double word.

Một số được biểu diễn 8 bit: 10011001 (với bit đầu tiên là msb (most significant bit: bit có trọng số cao nhất), bit cuối cùng là lsb (least significant bit: bit có trọng số thấp nhất).

Viết tắt

"Byte" thường được viết tắt là "B", và "megabyte" được viết tắt là "MB".

''b'' là viết tắt của bit, ví dụ như 10b được hiểu là 10 bits,10mb được hiểu là 10 Megabits.

Do đó cần phần biệt giữa bit ''b'' và Byte ''B''.

Một số nước nói tiếng Pháp đôi khi dùng "o" cho "octet". Việc này không chấp nhận được trong SI vì nó có thể nhầm lẫn với số 0.

Tên cho các đơn vị lớn hơn

Lưu ý: các tên "kilobyte", "megabyte", "gigabyte", v.v. có thể được dùng cho các tiền tố SI hay nhị phân. Xin xem Tiền tố nhị phân để biết thêm chi tiết.

Xem thêm

Tham khảo

Bài viết này vẫn còn sơ khai. Bạn có thể giúp Wikipedia mở rộng nội dung để bài được hoàn chỉnh hơn.
  • x
  • t
  • s

Liên kết ngoài

  • nybble tại dictionary.com
  • x
  • t
  • s
Không xác định
Số
  • Độ chính xác tùy ý hay bignum
  • Phức
  • Thập phân
  • Dấu phẩy tĩnh
  • Dấu phẩy động
    • Độ chính xác thấp
      • Minifloat
      • Bán chính xác
      • bfloat16
    • Độ chính xác đơn
    • Độ chính xác kép
    • Độ chính xác bậc bốn
    • Độ chính xác bậc tám
    • Độ chính xác mở rộng
      • Long double
  • Nguyên
    • có dấu và không dấu
  • Khoảng
  • Hữu tỉ
Con trỏ
Văn bản
  • Ký tự
  • Chuỗi
    • kết thúc rỗng
Phức hợp
  • Kiểu dữ liệu đại số
    • tổng quát
  • Mảng
  • Mảng kết hợp
  • Lớp
  • Phụ thuộc
  • Equality
  • Quy nạp
  • Giao
  • Danh sách
  • Đối tượng
    • siêu đối tượng
  • Kiểu tùy chọn
  • Tích
  • Bản ghi hay Struct
  • Refinement
  • Tập hợp
  • Hợp
    • tagged
Khác
  • Boole
  • Kiểu đáy
  • Collection
  • Kiểu liệt kê
  • Ngoại lệ
  • Kiểu hàm
  • Kiểu dữ liệu mờ
  • Kiểu dữ liệu đệ quy
  • Đèn báo
  • Stream
  • Kiểu đỉnh
  • Lớp kiểu
  • Kiểu đơn vị
  • Void
Chủ đề
liên quan