คำถามง่ายๆสวย แต่สิ่งที่ฉันไม่สามารถค้นหา ใครเป็นคนแรกที่อธิบายความคิดของตัวชี้? แนวคิดนามธรรมเอง
คำถามง่ายๆสวย แต่สิ่งที่ฉันไม่สามารถค้นหา ใครเป็นคนแรกที่อธิบายความคิดของตัวชี้? แนวคิดนามธรรมเอง
คำตอบ:
Bud Lawsonได้รับรางวัล Computer Pioneer Awardจาก IEEEเมื่อไม่กี่ปีที่ผ่านมาเพื่อประดิษฐ์ตัวชี้ในปี 1964
พอยน์เตอร์เป็นพื้นที่จัดเก็บที่ระบุโดยเนื้อหาของการลงทะเบียน เนื่องจากภาษาแอสเซมเบลอร์ดังกล่าวใช้วิธีนี้ในบางวิธีและก่อนหน้านั้นรหัสเครื่องทั้งหมดที่ใช้รหัสยากจะใช้สิ่งนี้
จะมีการโต้แย้งว่าคอมพิวเตอร์เครื่องแรกที่ใช้สิ่งนี้ เท่าที่ฉันทราบระบบขนาดเล็กของ Manchestern Universityเป็นระบบแรกที่รวมพื้นที่เก็บข้อมูลที่ลงทะเบียนโดยโปรแกรมควบคุม อาจถูกนำหน้าด้วยระบบ ENIAC แต่มีพื้นที่เก็บข้อมูลน้อยมากเพื่อทำให้ที่เก็บข้อมูลที่กำหนดแอดเดรสได้เป็นจุดที่สงสัย
ตัวชี้มีการอ้างอิงที่กว้างกว่า ภาษาแรกที่มีอะไรเช่นนั้นคือ ALGOL 60 ซึ่งสามารถโทรได้โดยใช้ชื่อ นี้คำตอบในดังนั้นไปในรายละเอียดบางส่วน PL / ฉันมีตัวชี้เช่นเดียวกับBCPLซึ่งหมายความว่า CPL อาจทำเช่นกันแม้ว่าฉันจะไม่พบหลักฐานใด ๆ CPL นั้นยากมากที่จะให้ข้อมูลที่เป็นรูปธรรม
หากต้องการตอบคำถามของคุณโดยตรงเกี่ยวกับ "ใคร" ทั้ง DW Barron, Christopher Strachey หรือ Martin Richards อาจจะเรียกคำว่า "ตัวชี้"
เป็นการยากที่จะคาดเดาว่าใครจะมาพร้อมกับพวกเขา แต่การลงทะเบียนดัชนีใน IBM 704 อาจเป็นการใช้งานครั้งแรก จากมุมมองภาษาการเขียนโปรแกรมจึงไม่ต้องสงสัยเลยว่ามันจะเป็นภาษาประกอบของ 704
เห็นได้ชัดว่าใช้เวลาไม่กี่ปีหลังจากนั้นก่อนที่ภาษาการเขียนโปรแกรมระดับสูงได้รับการออกแบบมาเพื่อใช้ประโยชน์จากนวัตกรรมนี้ แต่โดยส่วนใหญ่แล้วการประดิษฐ์ได้เสร็จสิ้นแล้วและส่วนใหญ่ลงมาเพื่อเลือกชื่อสัญลักษณ์และอื่น ๆ ได้รับการสนับสนุน.
พอยน์เตอร์เป็นแนวคิดพื้นฐานที่ใช้ใน "การกำหนดตำแหน่งทางอ้อม" ฟังก์ชันบน CPUs ส่วนใหญ่จะย้อนกลับไปอย่างน้อยเท่ากับ 6502
พลเรือจัตวาใช้ "kernal" บนคอมพิวเตอร์ VIC 20, C64 และ C128 ซอฟต์แวร์ที่อยู่คงที่สามารถเรียกได้ว่าจะถูกเปลี่ยนเส้นทางไปยังรหัสปัจจุบัน พวกเขาสามารถปรับเปลี่ยนระบบปฏิบัติการโดยไม่ทำลายซอฟต์แวร์ที่มีอยู่
ฉันคิดว่า 8080 และ Z80 มีที่อยู่ทางอ้อมด้วย แต่ฉันก็ไม่แน่ใจและฉันจำไม่ได้ใน 8008
เป็นครั้งแรกที่ไวยากรณ์และความหมายที่เป็นรูปธรรมซึ่งพัฒนาขึ้นสำหรับตัวแปรตัวชี้สำหรับภาษาการเขียนโปรแกรม PL / I ในปี 1964
บทความเกี่ยวกับเรื่องนี้ปรากฏในปี 1967 ใน ACM Communications ในปี 1967