(Đã dịch) Siêu Não Hắc Khách (Hacker) - Chương 60: Chỉ Đơn Giản Như Vậy
Đại khái vào năm Lộ Tư mười một tuổi, ngoại công của hắn rốt cục mang về chiếc máy vi tính đầu tiên, tên là VIC-20. Chiếc máy vi tính này chính là thiết bị đầu tiên mà Lộ Tư tiếp xúc một cách chính thức, và hắn đã hoàn toàn đắm chìm trong thế giới thần kỳ này.
VIC-20 là một trong những máy vi tính gia dụng đời đầu, chỉ là một hộp chứa đầy linh kiện, rất nhỏ, cần kết nối với TV để làm màn hình. Ngoại công của Lộ Tư chỉ coi nó như một món đồ nâng cấp, và trên thực tế, chức năng của chiếc máy vi tính này cũng không mạnh mẽ lắm, nhưng đối với Lộ Tư mà nói, nó lại mang một ý nghĩa vô cùng quan trọng.
VIC-20 tuy đơn giản, nhưng lại có thể sử dụng ngôn ngữ BASIC để biên dịch phần mềm, và điều này đã trở thành niềm vui lớn nhất của Lộ Tư sau này.
Ngôn ngữ BASIC là một loại ngôn ngữ khá đơn giản trong số các ngôn ngữ lập trình cao cấp, thích hợp nhất cho người mới bắt đầu.
Đến tận bây giờ, Lộ Tư vẫn còn ấn tượng sâu sắc với chương trình máy tính đầu tiên của mình, đó là một phần mềm nhỏ để in ra màn hình liên tục dòng chữ HELLO. Hắn đã nhập nó vào trình biên dịch BASIC theo một mẫu lập trình trong sách hướng dẫn, rất đơn giản, chỉ có hai dòng lệnh. Dòng thứ nhất in ra chữ HELLO, dòng thứ hai lệnh cho chương trình quay lại dòng thứ nhất.
Trong tình huống bình thường, máy vi tính sẽ thực thi chương trình theo thứ tự từ trên xuống dưới, nhưng nếu có lệnh quay lại, nó sẽ ngoan ngoãn quay về vị trí được chỉ định và bắt đầu lại.
Vì vậy, chương trình đầu tiên mà Lộ Tư biên soạn là in ra liên tục các chữ "HELLO". Sau đó, khi muội muội của hắn nhìn thấy, liền yêu cầu hắn sửa đổi chương trình để in ra dòng chữ "Sara là người giỏi nhất trên thế giới!".
Lộ Tư rất nhanh chóng sử dụng thành thạo ngôn ngữ BASIC. Hắn có thể dùng ngôn ngữ lập trình này để giúp ngoại công giải quyết một số vấn đề tính toán phức tạp, trở thành trợ thủ đắc lực của ông. Lúc này, hắn mới thực sự cảm nhận được sự thay đổi mà lập trình máy vi tính mang lại cho cuộc sống của mình.
Từ đó về sau, hắn dùng ngôn ngữ BASIC để biên soạn rất nhiều chương trình, phần lớn đều chỉ dùng một lần rồi xóa đi. Hắn hiện thực hóa đủ loại kỳ tư diệu tưởng của mình thông qua lập trình, và tìm thấy niềm vui ngoài thú vui vô tuyến điện. Hơn nữa, hắn bắt đầu thử kết nối máy vi tính với đài vô tuyến của mình. Dù sao thì cả hai đều là sản phẩm điện tử, giữa chúng vẫn có một số liên hệ nhất định. Hắn tiết kiệm tiền tiêu vặt để mua một số thứ để kết nối hai thứ lại với nhau, và cuối cùng cũng thành công kết nối máy vi tính với radio của mình. Sau đó, hắn bắt đầu thử sử dụng ngôn ngữ BASIC để biên soạn một chương trình, dùng để chuyển đổi ký tự Latin sang mã Morse và ngược lại.
Nói cách khác, chỉ cần nhập nội dung văn bản cần gửi vào, chương trình sẽ tự động chuyển đổi các ký tự này thành tín hiệu "tích tè" của mã Morse, sau đó truyền qua cáp điện kết nối với máy tính đến máy phát tin, từ đó phát tín hiệu ra ngoài.
Đây là một chương trình vô cùng thiết thực, giúp đơn giản hóa quá trình liên lạc giữa hắn và người khác, loại bỏ công tắc điện để bấm mã Morse.
Sau khoảng một tháng, chương trình của hắn đã được biên soạn xong. Các ký tự tiếng Anh có thể được chuyển đổi thành tín hiệu "tích tè" một cách trôi chảy, nhưng hắn lại gặp phải một vấn đề nan giải, đó là hắn không biết làm thế nào để truyền các tín hiệu này qua đường truyền dữ liệu đến máy phát tin.
Điều này đòi hỏi phải nắm vững những kiến thức cơ bản nhất về nguyên lý truyền tin, nhưng ngôn ngữ BASIC lại không có nội dung này.
Hắn đã dành rất nhiều thời gian để nghiên cứu vấn đề này, nhưng vẫn không có manh mối. Cho đến một ngày, hắn nhận được một chương trình như vậy từ một người bạn làm vô tuyến điện nghiệp dư.
Công dụng của chương trình này giống với ý tưởng ban đầu của Lộ Tư, và nó có thể hoạt động bình thường, truyền tải thành công các loại bức điện CW. Đối với Lộ Tư, điều quan trọng nhất không phải là chức năng của chương trình này, mà là ngôn ngữ biên soạn chương trình.
Trước đó, hắn vẫn nghĩ rằng lập trình máy vi tính chỉ là lập trình BASIC, cho rằng trong máy vi tính chỉ có một loại ngôn ngữ lập trình là BASIC. Về cách thức hoạt động của tầng dưới cùng của máy vi tính, hắn cũng không có một sự hiểu biết rõ ràng.
Nhưng phần mềm nhỏ này đã mở ra cánh cửa dẫn đến nguyên lý hoạt động của tầng dưới cùng của máy vi tính cho hắn.
Người bạn HAM kia không chỉ đưa cho hắn chương trình đã biên dịch, mà còn kèm theo mã nguồn của phần mềm nhỏ này.
Lộ Tư kinh ngạc phát hiện, chương trình này không phải do ngôn ngữ BASIC biên soạn, mà là một loạt các con số kỳ lạ. Lúc đầu, hắn hoàn toàn không hiểu gì cả, nhưng điều này không hề ảnh hưởng đến hứng thú nghiên cứu sâu hơn của hắn. Sau này, hắn mới biết được, hóa ra những con số này là một loại hệ thập lục phân được gọi là ngôn ngữ máy. Những con số này, theo một mối quan hệ cố định, có thể dễ dàng chuyển đổi thành một dãy chữ số gồm 0 và 1.
Và "0" cùng "1" mới là bản chất cơ bản nhất của ngôn ngữ máy.
Ngôn ngữ BASIC chỉ được xây dựng trên cơ sở của ngôn ngữ máy. BASIC là một loại ngôn ngữ cấp cao, sở dĩ nó được phát minh ra là để các lập trình viên không phải tốn công ghi nhớ, giảm bớt độ khó cho công việc lập trình.
Đạo lý này cũng giống như những điển cố thành ngữ vậy, tuy chỉ có vài chữ ngắn ngủi, nhưng lại có thể bao hàm một đoạn nội dung dài. Các lập trình viên đã học qua những "điển cố" này từ trước, cho nên khi biên dịch phần mềm, họ có thể tự do sử dụng chúng như khi viết văn. Nhưng máy vi tính lại tương đối "ngốc", nó không thể trực tiếp hiểu những điển cố này, mà phải thông qua một công cụ gọi là "trình biên dịch" để dịch chúng thành một loại ngôn ngữ mà máy tính có thể dễ dàng hiểu được, như vậy nó mới hiểu.
Lập trình viên thậm chí không cần quan tâm đến nội dung chi tiết của những điển cố này, như thời gian, địa điểm phát sinh điển cố và các nhân vật liên quan. Họ chỉ cần biết đại khái điển cố này có thể được sử dụng khi nào là được rồi. Dù sao thì vẫn còn "trình biên dịch" làm công việc phiên dịch, lập trình viên muốn nói gì nó đều có thể nói lại cho máy tính hiểu.
Lợi ích thì rất rõ ràng, lập trình viên có thể tiết kiệm được rất nhiều thời gian và công sức. Thông qua việc sử dụng "điển cố", họ có thể biên soạn ra các chương trình cần thiết một cách nhanh chóng.
Tuy nhiên, điều này cũng có một tác hại rất lớn. Bởi vì nếu lập trình viên không biết chân tướng của những "điển cố" này, họ sẽ không thể làm việc một cách cẩn thận. Giống như Lộ Tư trước đây, hắn chỉ học qua BASIC, mà không biết cuối cùng BASIC sẽ được dịch thành loại mã máy nào, không biết chi tiết về việc truyền dữ liệu, nên hắn không thể biên soạn ra chương trình đó.
Trên thực tế, đây là điểm hạn chế của BASIC, bản thân thiết kế của nó có những thiếu sót nên nó không thể thao tác những thứ ở tầng dưới cùng.
Thông qua phần mềm nhỏ này, Lộ Tư đã biết rằng bên dưới ngôn ngữ BASIC, vẫn còn tồn tại một loại ngôn ngữ được gọi là "ngôn ngữ máy", và bên dưới ngôn ngữ máy còn có "mã nhị phân".
Khi biết ngôn ngữ này, người ta có thể trực tiếp giao tiếp với phần cứng. "0" là mở chốt chặn ra, còn "1" là đóng chốt chặn lại. Là một người chơi vô tuyến điện nghiệp dư lâu năm, hắn vô cùng quen thuộc với loại mạch điện đơn giản này.
Bây giờ hắn mới biết, nguyên lý hoạt động của máy tính đơn giản đến vậy. Dịch độc quyền tại truyen.free, nơi những con chữ được chắp cánh bay cao.