Trong ngôn ngữ lập trình nào, việc sử dụng dấu phần trăm (%) có nghĩa là modulo / phần còn lại bắt nguồn?


16

Trong ngôn ngữ lập trình nào, việc sử dụng dấu phần trăm (%) có nghĩa là modulo / phần còn lại bắt nguồn?

Bài đăng trước 1 này giải thích rằng% ký hiệu có khả năng được chọn vì nó bao gồm một dấu gạch chéo, thông minh cho một thao tác liên quan đến phép chia. Nó cũng đề cập đến ảnh hưởng của việc sử dụng biểu tượng của C. Tuy nhiên, tôi không chắc chắn rằng nó có nguồn gốc từ C. Ngôn ngữ lập trình B là tiền thân của C và tôi đã tìm thấy Hướng dẫn sử dụng cho B (PDF, trang 12) nói rằng:

Toán tử% biểu thị modulo. Nếu cả hai toán hạng đều dương, kết quả là chính xác. Nó không được xác định khác.

Hướng dẫn sử dụng đó là ngày năm 1972, khoảng khi C xuất hiện. Điều đó khiến cho về mặt lý thuyết vẫn có thể có nguồn gốc từ C, nhưng sau đó được chuyển ngược lại B. Tôi cũng chưa thể tìm thấy thông số kỹ thuật cho các ngôn ngữ khác trước khi sử dụng ký hiệu% này.


  1. Mà tôi tin rằng câu hỏi này không phải là một trùng lặp: Đó là một yêu cầu tại sao các phép toán module là nền tảng, tôi hỏi về khi biểu tượng đặc biệt dường như modulo trung bình.

3
BCPL là tiền thân của cả B và C. Toán tử mô đun trong BCP là rem. eah-jena.de/~kleine/history/lacular/ nam Tương tự, Algol-W cũng được sử dụng rem.
BobDalgleish

Câu trả lời:


10

Tài liệu tham khảo sớm nhất tôi có thể tìm thấy là từ ngôn ngữ lập trình "B" được phát triển bởi Ken Thompson với Dennis Ritchie vào khoảng năm 1969. B Reference

Vì đây là một triển khai / cải tiến của BPCL, tôi phải giả sử nhà điều hành là một phần của BPCL nhưng tôi không thể tìm thấy một tài liệu tham khảo cụ thể cho việc này.


4
Rõ ràng đó là "rem" trong BPCL (Xem bình luận từ BobDalgleish)
James Anderson

Dựa trên liên kết, nó không thể là 1969 NẾU việc triển khai được trình bày là lần đầu tiên. Honeywell đã không mua Bộ phận Máy tính GE cho đến năm 1970 và bài báo chắc chắn đã tham chiếu một máy tính H6070. Ritchie và Thompson đã làm việc với Project MAC trong multologists.org/unix.html .
dbasnett

Một tham chiếu BCPL khác. multologists.org/mgb.html#BCPL
dbasnett
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.