Có một sự thay thế cho bit là đơn vị dữ liệu nhỏ nhất không? Một cái gì đó sẽ không chỉ là 0 hoặc 1, nhưng thực sự có nhiều trạng thái có thể ở giữa? Sẽ không tự nhiên hơn khi lưu trữ phao như vậy?
Có một sự thay thế cho bit là đơn vị dữ liệu nhỏ nhất không? Một cái gì đó sẽ không chỉ là 0 hoặc 1, nhưng thực sự có nhiều trạng thái có thể ở giữa? Sẽ không tự nhiên hơn khi lưu trữ phao như vậy?
Câu trả lời:
Tất nhiên là có thể, cả về lý thuyết và thực tế.
Về mặt lý thuyết, có hai loại thay thế: hệ thống số kỹ thuật số có cơ sở khác 2 (trên thực tế, hệ thập phân như chúng ta biết là một hệ thống như vậy); và hệ thống số phi kỹ thuật số. Về mặt toán học, chúng ta đang nói về các miền rời rạc và liên tục.
Trong thực tế, cả hai lựa chọn đã được khám phá. Một số máy tính kỹ thuật số ban đầu (ví dụ ENIAC) sử dụng mã hóa thập phân thay vì mã hóa nhị phân phổ biến hiện nay; các căn cứ khác, ví dụ như ternary, nên khả thi (hoặc không khả thi). Ngôn ngữ lập trình bí truyền Malbolge dựa trên một máy tính ternary lý thuyết; trong khi chủ yếu là châm biếm, không có lý do kỹ thuật tại sao nó không hoạt động. Lưu trữ và xử lý miền liên tục được thực hiện trong lịch sử trên các máy tính tương tự, nơi bạn có thể mã hóa các đại lượng dưới dạng tần số và / hoặc biên độ của tín hiệu dao động, và sau đó bạn sẽ thực hiện tính toán bằng cách áp dụng tất cả các loại điều chế cho các tín hiệu này. Ngày nay, điện toán lượng tử làm cho lý thuyết đằng sau các tế bào lưu trữ liên tục trở nên thú vị trở lại.
Dù bằng cách nào, bit như một đơn vị thông tin nhỏ nhất về mặt lý thuyết vẫn tồn tại, vì bất kỳ sự thay thế nào cũng có thể mã hóa nhiều thông tin hơn một có / không, và chưa ai đưa ra một đơn vị lý thuyết nhỏ hơn (và tôi không hy vọng nó sẽ xảy ra bất cứ lúc nào sớm).
double
Some of the early digital computers employed decimal encodings rather than the now ubiquitous binary encoding
- Trên thực tế, mã hóa thập phân vẫn được sử dụng cho đến ngày nay; nó được gọi là BCD . BIOS trong hầu hết các máy tính sử dụng nó (cho các ngày dựa trên thập phân) , cũng như hầu hết các máy tính giá rẻ, bởi vì nó đòi hỏi ít mạch hơn (tức là rẻ hơn) để làm mọi thứ trong BCD so với thực hiện nhị phân và có một chuyển đổi nhị phân sang thập phân.
Về cơ bản, bạn đang mô tả một tín hiệu tương tự, được sử dụng trong các cảm biến, nhưng hiếm khi cho các tính toán bên trong. Vấn đề là tiếng ồn làm giảm chất lượng, bạn cần hiệu chuẩn rất chính xác điểm tham chiếu khó giao tiếp và truyền dẫn là một vấn đề vì nó mất sức mạnh khi di chuyển xa hơn.
Nếu bạn thích khám phá điện toán tương tự, hầu hết các lớp "giới thiệu về điện tử", bạn sẽ xây dựng những thứ như các nhà tích hợp op-amp . Chúng đủ dễ dàng để xây dựng ngay cả khi không có hướng dẫn chính thức.
Bạn cũng có thể lưu trữ nhiều trạng thái kỹ thuật số trên cùng một nút. Ví dụ, thay vì 0-2,5 volt là 0 và 2,5-5,0 volt là một, bạn có thể thêm trạng thái thứ ba ở giữa. Tuy nhiên, nó làm tăng thêm sự phức tạp và làm tăng đáng kể tính nhạy cảm của bạn với tiếng ồn.
Chúng được gọi là qubit, và được sử dụng trong máy tính lượng tử. Bạn sẽ tìm thấy thêm thông tin về họ trên mục wikipedia . Nghiên cứu đang được thực hiện để làm cho các máy tính như vậy ổn định và khả thi về kinh tế.
Một lý do chúng tôi sử dụng bit là nó giúp chúng tôi lưu trữ và truy xuất thông tin chính xác.
Thế giới thực là tương tự, do đó tất cả các máy tính thông tin vượt qua hoặc lưu trữ cuối cùng là tương tự . Ví dụ, dòng điện của một điện áp cụ thể trên dây hoặc điện tích từ có cường độ riêng trên đĩa hoặc hố có độ sâu cụ thể trên đĩa laser.
Câu hỏi là: làm thế nào chính xác bạn có thể đo thông tin tương tự ? Hãy tưởng tượng rằng một dòng điện trên dây có thể được hiểu là bất kỳ số thập phân nào, như sau:
V.v. Hệ thống này sẽ cho phép chúng ta truyền rất nhiều dữ liệu trong một vài xung của dòng điện, phải không? Nhưng có một vấn đề: chúng ta phải rất chắc chắn điện áp là gì. Nếu nhiệt độ hoặc nam châm hoặc tia vũ trụ hoặc bất cứ điều gì gây ra một số biến động, chúng ta có thể đọc nhầm số. Và chúng tôi càng có ý định đo lường càng tốt thì rủi ro đó càng lớn. Hãy tưởng tượng nếu sự khác biệt 1 millivolt là đáng kể!
Thay vào đó, chúng tôi thường sử dụng một giải thích kỹ thuật số . Tất cả mọi thứ trên một số ngưỡng là đúng, và tất cả mọi thứ dưới là sai. Vì vậy, chúng ta có thể đặt câu hỏi như "Có bất kỳ hiện tại nào không?" thay vì " Chính xác có bao nhiêu hiện tại?"
Mỗi bit riêng lẻ có thể được đo bằng sự tự tin, bởi vì chúng ta chỉ phải "ở đúng sân bóng". Và bằng cách sử dụng nhiều bit, chúng ta vẫn có thể nhận được nhiều thông tin.
Ngoài ra còn có máy tính ternary thay vì máy tính nhị phân. http://en.wikipedia.org/wiki/Ternary_computer
Một máy tính ternary (còn gọi là máy tính ba ) là một máy tính sử dụng logic ternary (ba giá trị có thể) thay vì logic nhị phân phổ biến hơn (hai giá trị có thể) trong tính toán của nó ...
Nó có thể tự nhiên hơn đối với chúng tôi nhưng có những lý do cụ thể tại sao nhị phân được chọn cho mạch kỹ thuật số và do đó cho các ngôn ngữ lập trình. Nếu bạn có hai trạng thái, bạn chỉ cần phân biệt giữa hai cài đặt volt là 0V và 5V. Đối với mỗi lần tăng thêm vào cơ số (cơ sở), bạn cần chia thêm phạm vi đó để có được các giá trị không rõ ràng với nhau. Bạn có thể tăng phạm vi điện áp nhưng điều đó có thói quen khó chịu là làm tan chảy mạch điện.
Nếu bạn muốn thay đổi loại phần cứng từ mạch kỹ thuật số, các tùy chọn của bạn sẽ đa dạng hơn. Số thập phân từng được sử dụng trong máy tính cơ vì bánh răng có khả năng chịu nhiệt cao hơn nhiều và khác biệt hơn nhiều so với điện tích. Máy tính lượng tử như đã nêu ở nơi khác có cách xử lý khác. Máy tính quang học cũng có thể làm được những việc chúng ta chưa từng xử lý trước đây và máy tính từ tính cũng có khả năng.
Tôi nghĩ rằng ngày nay bạn có thể xây dựng các mục có thể chứa bất kỳ trạng thái nào hoặc thậm chí hoạt động với dữ liệu tương tự. Mặc dù việc xây dựng toàn bộ hệ thống và vận hành tất cả các thành phần logic để có được kiến trúc đầy đủ tính năng và có thể lập trình sẽ là rất nhiều công việc và rủi ro tài chính cho bất kỳ công ty nào thực hiện nhiệm vụ này.
Tôi nghĩ ENIAC là kiến trúc cuối cùng sử dụng bộ đếm vòng mười vị trí để lưu trữ các chữ số. Mặc dù tôi có thể sai về điều này và tôi không chắc, điều này ảnh hưởng đến các bộ phận khác của máy như thế nào.
Lưu trữ có thể được coi là truyền đến tương lai, tất cả các vấn đề truyền với phương tiện liên tục (tương tự) sẽ được áp dụng.
Lưu trữ các trạng thái đó có thể là tầm thường (chuyển đổi ba chiều hoặc một loại lưới nào đó) và lưu trữ vật lý các trạng thái này là một vấn đề mà nhiều câu trả lời bao gồm, tốt hơn nhiều so với tôi có thể.
Mối quan tâm chính của tôi là làm thế nào trạng thái được lưu trữ này được mã hóa và dường như có khả năng cao rằng nhiệm vụ này là một việc vặt, vì các bit đủ để biểu diễn dữ liệu liên tục thực tế, tùy thuộc vào độ chính xác bạn cần, tiếp tục thêm nhiều bit.
Dữ liệu thực sự liên tục là không thể lưu trữ theo cách này, nhưng phương trình để tính toán chúng, ví dụ
1/3
có thể được lưu trữ.
Một manh mối và một mực là những mẩu thông tin nhỏ hơn một chút. Một số manh mối thường được yêu cầu để thiết lập giá trị xác định của một bit. Inklings tệ hơn: cho dù bạn có thêm bao nhiêu, bạn vẫn không thể biết giá trị của bit kết quả.
Nghiêm trọng hơn, có những logic đa giá trị trong đó đơn vị cơ bản có thể có một trong n trạng thái, trong đó n> 2. Bạn có thể xem xét các đơn vị này mang ít thông tin hơn một chút theo nghĩa của đoạn trước, nhưng từ một lý thuyết thông tin quan điểm bạn phải nói rằng họ mang nhiều hơn. Ví dụ: bạn cần hai bit để biểu thị cùng một lượng thông tin mà một giá trị trong logic bốn giá trị có thể mang theo.
Cơ sở số tối ưu là e , nhưng vì cách đơn giản nhất để biểu diễn một số trong điện tử kỹ thuật số là có hai trạng thái (điện áp cao = 1, điện áp thấp = 0), nên biểu diễn số nhị phân.
e
mà không nhắc đến nat ? Vì xấu hổ.
Có một đơn vị dữ liệu nhỏ hơn có thể. Tôi không biết tên chính thức cho nó, hãy gọi nó là un.
Bit là một từ kết hợp thông minh cho "Binary digIT", có nghĩa là nó có hai trạng thái có thể. Vì vậy, phải có một loại chữ số chỉ có một trạng thái có thể.
Hãy xem điều đó có nghĩa là gì. Nó có nghĩa là bạn sẽ chỉ có số không để làm việc với.
Bạn sẽ tính như thế nào? Trong bất kỳ hệ thống cơ sở x nào, bạn tăng giá trị cho đến khi hết chữ số và sau đó thêm một chữ số để tạo thành một số. Nếu bạn chỉ có một chữ số, bạn sẽ hết chữ số ngay lập tức:
Không = 0 Một = 00 Hai = 000 et cetera
Điều này chắc chắn là tự nhiên hơn: nhiều hơn là nhiều hơn! Nó ánh xạ hoàn hảo đến bất kỳ số lượng riêng biệt của sự vật. Có bao nhiêu khoai tây? 00000 Đó là bốn củ khoai tây. Đợi một chút ... đó là một trong một. Nếu bạn không thích điều đó, bạn có thể xác định lại giá trị 0 thành một. Sau đó, nó là thực sự tự nhiên: không có số không là không có, một số không là một, hai số không là hai, et cetera.
Điều này là không thực tế cho một máy trạng thái rắn mặc dù. Các chữ số sẽ phải được đặt và loại bỏ vật lý và nó không có tỷ lệ tốt.
Tôi không thể tìm thấy một tài liệu tham khảo tiếng Anh dứt khoát, nhưng theo như tôi nhớ từ Lớp Lý thuyết Thông tin , bit là đơn vị thông tin cơ bản. Một chút thông tin là thông tin bạn nhận được sau khi tung đồng xu công bằng (xác suất 50% cho mỗi bên). Mọi thứ khác có thể được giảm xuống này.
Ngay cả khi bạn sử dụng một thiết bị có nhiều trạng thái, nó luôn có thể được giảm xuống thành bit.