อ่าน 9 นาที
บีบีซี เบสิค
BBC BASIC เป็น ภาษาโปรแกรม BASIC เวอร์ชัน ที่ใช้การตีความ (interpreted) พัฒนาโดย บริษัท Acorn Computers Ltd.
บีบีซี เบสิค
| บีบีซี เบสิค | |
|---|---|
| นักพัฒนา | บริษัท เอคอร์น คอมพิวเตอร์ จำกัด |
| ปรากฏครั้งแรก | 1981 |
| แพลตฟอร์ม | BBC Microcomputer (6502) Acorn Archimedes (ARM) Acorn RISC PC (ARM / StrongARM) |
| โอเอส | Acorn 6502 MOS ระบบปฏิบัติการ Acorn RISC OS |
| ได้รับอิทธิพล | |
| การพอร์ตโปรแกรมจากผู้พัฒนาภายนอกไปยัง MS Windows การสนับสนุน ARM อย่างต่อเนื่องโดยผู้พัฒนาภายนอก | |
BBC BASICเป็น ภาษาโปรแกรม BASICเวอร์ชันที่ใช้การตีความ (interpreted)พัฒนาโดยบริษัท Acorn Computers Ltd.เมื่อได้รับการคัดเลือกจากBBCให้จัดหาคอมพิวเตอร์สำหรับโครงการ BBC Computer Literacy Projectในปี 1981
เดิมทีภาษาโปรแกรมนี้ถูกติดตั้งมาในROMสำหรับคอมพิวเตอร์ BBC Microcomputerซึ่งใช้ไมโครโปรเซสเซอร์ 6502เมื่อบริษัท Acorn ผลิต คอมพิวเตอร์ Archimedesซึ่งใช้ โปรเซสเซอร์ ARM ของตนเอง ภาษา BBC BASIC เวอร์ชันเพิ่มเติมจึงถูกพัฒนาขึ้นมา โดย Acorn ได้เพิ่มตัวประกอบภาษาแอสเซมบลี (assembler)เข้าไปใน โปรแกรมด้วย โดยเริ่มจากสำหรับโปรเซสเซอร์ 6502 และต่อมาสำหรับโปรเซสเซอร์ ARM2
ในตอนแรก BBC ระบุความเข้ากันได้กับMicrosoft BASIC Acorn ได้ขยายAtom BASIC รุ่นก่อนหน้าของตน ให้ครอบคลุม โครงสร้าง การเขียนโปรแกรมแบบมีโครงสร้างแล้วโดยเฉพาะอย่างยิ่งในคอมพิวเตอร์ Archimedes รุ่นหลังๆ เมื่อข้อจำกัดด้านหน่วยความจำลดลง BBC BASIC จึงได้รวมชุดโครงสร้างการเขียนโปรแกรมแบบมีโครงสร้างที่สมบูรณ์ยิ่งขึ้น ซึ่งพบได้ทั่วไปในกลุ่มภาษาคอมพิวเตอร์ ALGOL 60
นอกเหนือจากเวอร์ชัน BBC BASIC ของ Acorn บนเครื่อง Archimedes แล้ว บริษัทอื่นๆ ยังได้ผลิต เวอร์ชัน ที่คอม ไพล์แล้ว ของภาษาดังกล่าว การพัฒนาและการสนับสนุนยังคงดำเนินต่อไปแม้หลังจากที่บริษัท Acorn Computers Ltd ล้มละลายไปแล้ว สำหรับคอมพิวเตอร์ ARM รุ่นใหม่กว่า ปัจจุบัน BBC BASIC มีให้บริการบนแพลตฟอร์มอื่นๆ แล้ว ไม่ว่าจะเป็นผ่านโปรแกรมจำลองเช่น บนMicrosoft Windowsหรือใช้งานโดยตรงก็ได้
ประวัติศาสตร์
ภาษาดั้งเดิม
ที่วิทยาลัยดาร์ทมัธอาจารย์คณิตศาสตร์สองท่าน[ 1 ]ต้องการให้นักเรียนทุกคนสามารถเขียนโปรแกรมบนคอมพิวเตอร์ของวิทยาลัยเครื่องใหม่ได้ ภาษาโปรแกรมระดับสูงที่มีอยู่ เช่นFORTRANและCOBOLนั้นถูกใช้โดยผู้เชี่ยวชาญและไม่เหมาะสมสำหรับการเขียนโปรแกรมเบื้องต้นโดยผู้ใช้ที่ไม่ใช่ผู้เชี่ยวชาญด้านเทคนิค ในปี 1964 พวกเขาได้สร้างDartmouth BASIC [ 2 ] (ย่อมาจากBeginner's All-Purpose Symbolic Instruction Code ) เพื่อเป็นภาษาคอมพิวเตอร์ที่ทุกคนสามารถใช้งานได้ ด้วยโครงสร้าง ทางไวยากรณ์แบบสูตรมันจึงเป็น FORTRAN ที่เรียบง่ายกว่า[ 3 ]
ปัจจัยหลายประการทำให้ BASIC กลายเป็นภาษาหลักในช่วงปลายทศวรรษ 1960 และในช่วงทศวรรษ 1970 เมื่อมีการสร้างไมโครคอมพิวเตอร์เครื่อง แรก BASIC ก็กลายเป็นมาตรฐาน โดยพฤตินัยสำหรับระบบขนาดเล็ก การเปิดตัวAltair 8800ทำให้ BASIC กลายเป็นภาษาโปรแกรมแรกที่เปิดตัวสำหรับแพลตฟอร์มนี้ ซึ่งพัฒนาโดยPaul AllenและBill Gatesเมื่อ มีการเปิดตัว ไมโครคอมพิวเตอร์รุ่นใหม่ เกือบทั้งหมดก็ใช้ BASIC ในรูปแบบต่างๆ เป็นอินเทอร์เฟซหลัก[ 3 ]
การมีส่วนร่วมของบีบีซี
ในช่วงทศวรรษ 1970 แผนกการศึกษาต่อเนื่องของ BBC กำลังพิจารณาว่าความก้าวหน้าในเทคโนโลยีที่เกี่ยวข้องกับคอมพิวเตอร์จะส่งผลกระทบต่อสังคมอังกฤษอย่างไร รายงานไมโครอิเล็กทรอนิกส์[ 4 ] ของพวกเขา ในปี 1979 ต่อ คณะกรรมการบริการกำลังคนได้อธิบายอย่างเป็นทางการถึงความกังวลของพวกเขาเกี่ยวกับการแบ่งขั้วและความแปลกแยกที่เพิ่มขึ้นในที่ทำงาน
BBC ต้องการไมโครคอมพิวเตอร์ที่สามารถใช้สำหรับการสาธิตในรายการของพวกเขา ซึ่งประชาชนทั่วไปสามารถซื้อได้เพื่อให้ผู้ชมสามารถทดลองด้วยตนเอง พวกเขาตัดสินใจว่าไมโครคอมพิวเตอร์ดังกล่าวต้องมีความทนทาน มีความสามารถในการขยาย และมีการใช้งาน BASIC ที่เข้ากันได้กับMicrosoft BASIC VN5 [ 5 ]
รัฐบาลและบีบีซีได้ร่วมกันจัดตั้งแคมเปญสร้างความตระหนักรู้และการศึกษาแก่สาธารณชน โครงการความรู้ด้านคอมพิวเตอร์ (พ.ศ. 2523-2532) [ 6 ] นี้ ใช้ BBC Microcomputerที่ผลิตโดยAcorn Computers Ltd ซึ่งบีบีซีเลือกใช้ โดย BBC BASIC เป็นหัวใจสำคัญของประสบการณ์การเขียนโปรแกรมของผู้ใช้
การมีส่วนร่วมของ Acorn
Acorn พัฒนา System BASIC และAtom BASIC เป็นครั้งแรก สำหรับคอมพิวเตอร์ไมโครโปรเซสเซอร์6502 รุ่นแรกๆ [ 7 ]ที่ขายให้กับลูกค้าที่ประกอบเอง ด้วยการพัฒนา Proton เป็นโปรเซสเซอร์ส่วนหน้า Acorn จึงออกแบบเพื่อการประมวลผลที่มีประสิทธิภาพมากขึ้น
เพื่อให้ได้คอมพิวเตอร์ที่ตรงตามข้อกำหนดของ BBC Proton จึงกลายเป็น BBC Microcomputer ซึ่งสามารถใช้งานได้ในฐานะคอมพิวเตอร์แบบสแตนด์อะโลน การคงความสามารถในการเชื่อมต่อกับ คอมพิวเตอร์ Z80ทำให้ Acorn สามารถปฏิบัติตามข้อกำหนดของคอมพิวเตอร์ที่รองรับCP/Mได้[ 8 ]
โซฟี วิลสันพัฒนาการใช้งาน BASIC ที่ Acorn [ 9 ]ภาษาถิ่นบน BBC Microcomputer เข้ากันได้กับ Microsoft BASIC และเป็นที่ยอมรับของ BBC โดยมีคุณสมบัติจากกลุ่มภาษาคอมพิวเตอร์ ALGOL 60 ที่วิลสันเพิ่มเข้ามาเพื่อให้สามารถใช้วิธีการเขียนโปรแกรมแบบมีโครงสร้างได้
แพลตฟอร์มและเวอร์ชัน
บีบีซี ไมโคร

รายการเวอร์ชันเต็มมีอยู่ที่นี่: [ 10 ]
BASIC I ซึ่งเป็นเวอร์ชันดั้งเดิม ถูกติดตั้งมาพร้อมกับเครื่อง BBC Microรุ่น แรกๆ
BASIC II ถูกใช้ในAcorn Electronและ BBC Micros ที่จัดส่งหลังปี 1982 รวมถึงรุ่น Model B ด้วย โดยเพิ่ม คีย์เวิร์ด OPENUPand OSCLIพร้อมกับการประกอบแบบออฟเซ็ตและการแก้ไขข้อผิดพลาด[ 11 ]
BASIC III ถูกผลิตขึ้นทั้งเวอร์ชันสำหรับสหราชอาณาจักรและเวอร์ชันสำหรับตลาดสหรัฐอเมริกา ในความพยายามที่ไม่ประสบความสำเร็จของ Acorn ในการเข้าสู่ตลาดคอมพิวเตอร์ข้ามมหาสมุทรแอตแลนติก นอกเหนือจากการแก้ไขข้อผิดพลาดเล็กน้อยแล้ว การเปลี่ยนแปลงเพียงอย่างเดียวจาก BASIC II คือCOLOURคำสั่งสามารถสะกดได้อีกแบบหนึ่งCOLORโดยไม่ว่าจะป้อนอะไรก็ตาม เวอร์ชันสหราชอาณาจักรจะแสดงเป็น เสมอ ส่วนCOLOURเวอร์ชันสหรัฐอเมริกาจะ แสดง COLORเป็น สถานที่หลักที่สามารถพบ BASIC III ได้คือในรูปแบบ HI-BASIC สำหรับโปรเซสเซอร์ตัวที่สองภายนอก
ภาษา BASIC IV หรือที่รู้จักกันในชื่อ CMOS BASIC ซึ่งมีอยู่ใน เครื่อง BBC Masterได้รับการเปลี่ยนแปลงให้ใช้คำสั่งใหม่ที่มีอยู่ในโปรเซสเซอร์ 65SC12 ทำให้ขนาดของโค้ดลดลง และทำให้สามารถรวมLIST IF, EXT#เป็นคำสั่ง, EDIT, TIME$, ON PROC, | ในVDUคำสั่งต่างๆ และคำนวณเลขทศนิยมได้เร็วขึ้น นอกจากนี้ยังมีการแก้ไขข้อผิดพลาดต่างๆ อีกด้วย
BASIC IV (1986) เป็นเวอร์ชันที่ได้รับการปรับปรุงเพิ่มเติมจาก BASIC IV และรวมอยู่ในเครื่อง Master Compact เวอร์ชันของ BASIC บนเครื่อง Compact ประกอบด้วยรูทีนทางคณิตศาสตร์ที่เขียนใหม่ ซึ่งกล่าวกันว่าทำให้ความเร็วเพิ่มขึ้น 30% เมื่อเทียบกับเวอร์ชันที่รวมอยู่ในเครื่อง Master รุ่นอื่นๆ[ 12 ]
HI-BASIC มีให้เลือกสองเวอร์ชัน เวอร์ชันแรกใช้ BASIC III และเวอร์ชันที่สองใช้ BASIC IV ทั้งสองเวอร์ชันสร้างขึ้นเพื่อให้ทำงานจากแอดเดรสที่สูงกว่า (&B800) บนโปรเซสเซอร์ตัวที่สอง แทนที่จะเป็นแอดเดรส &8000 ตามปกติบน BBC B ซึ่งทำให้มีพื้นที่โปรแกรมมากขึ้นบนโปรเซสเซอร์ตัวที่สอง 6502 ทั้งภายนอกและภายใน มีการแนะนำเวอร์ชันเพื่อรองรับโปรเซสเซอร์ตัวที่สองZilog Z80 [ 13 ]
BBC BASIC เวอร์ชันอีกแบบหนึ่งที่เรียกว่า BAS128 นั้นถูกจัดมาให้พร้อมกับเครื่อง BBC Master และ Master Compact ในรูปแบบเทปและแผ่นดิสก์ โดยจะโหลดเข้าไปในหน่วยความจำหลัก (RAM) และใช้หน่วยความจำด้านข้าง (Sideways RAM) ขนาด 64 KB สำหรับโปรแกรมของผู้ใช้ ซึ่งทำให้รองรับโปรแกรมขนาดใหญ่ได้มากขึ้น แต่ก็แลกมาด้วยความเร็วที่ช้ากว่าเวอร์ชันที่ใช้ ROM ทั่วไปมาก
ตัวแปลภาษาสามารถจัดการกับทั้งภาษาแอสเซมบลี BASIC และ 6502 ซึ่งสามารถรวมไว้ระหว่างอักขระ [ และ ] ได้ สิ่งนี้มีส่วนทำให้ระบบนี้ได้รับความนิยมในหมู่วิศวกรอุตสาหกรรมและวิศวกรวิจัย[ 14 ]
รายละเอียดเพิ่มเติม/การตรวจสอบเวอร์ชัน BASIC
เนื่องจากระบบปฏิบัติการ BBC MOS และ RISC OS มักถูกติดตั้งบน ROM จึงอาจสันนิษฐานได้ว่าระบบปฏิบัติการแต่ละรุ่นจะมี BASIC เวอร์ชันเฉพาะเจาะจง ดังนั้นจึงไม่มีวิธีง่ายๆ ที่จะระบุได้ว่า BASIC เวอร์ชัน ใดกำลังทำงานอยู่ นอกจากการตรวจสอบข้อมูลประจำตัวของระบบปฏิบัติการและทำการสันนิษฐานเอาเอง
โปรดทราบว่าคอมพิวเตอร์ Electron และไมโครคอมพิวเตอร์ BBC รุ่นหลังๆ ทุกเครื่องใช้ BASIC2 ส่วนไมโครคอมพิวเตอร์ BBC รุ่นก่อนหน้าใช้ BASIC1 หากคุณไม่แน่ใจว่าเครื่องของคุณใช้ BASIC เวอร์ชันใด การพิมพ์ REPORT หลังจากที่ BASIC เริ่มทำงานแล้ว (หลังจาก BREAK หรือ *BASIC) จะแสดงข้อความลิขสิทธิ์ หากเป็นปี 1981 แสดงว่าติดตั้ง BASIC1 หากเป็นปี 1982 แสดงว่าติดตั้ง BASIC2 เครื่องคอมพิวเตอร์ของอเมริกา หรือเครื่องที่มีโปรเซสเซอร์ตัวที่สอง อาจใช้ US BASIC หรือ HIBASIC: ตำแหน่งของรูทีนใน ROM จะไม่เหมือนกันสำหรับ ROM เหล่านี้— คู่มือผู้ใช้ ROM ฉบับพื้นฐาน
ดูข้อมูลเพิ่มเติมเกี่ยวกับ INKEY ได้ใน BeebWiki
ในตระกูล BBC นั้น สามารถรันทั้งภาษา BASIC มาตรฐานและ HIBASIC ที่ได้รับการปรับปรุงบนโปรเซสเซอร์ตัวที่สองของ 6502 ได้ สามารถตรวจสอบได้ว่าโปรแกรมกำลังทำงานบนโปรเซสเซอร์ตัวที่สองหรือไม่ โดยดูจากค่าเริ่มต้นของ PAGE ซึ่งจะเป็น &800 หากใช้โปรเซสเซอร์ตัวที่สอง ส่วนการแยกแยะระหว่าง BASIC และ HIBASIC นั้น ควรตรวจสอบค่าเริ่มต้นของ HIMEM ซึ่งจะเป็น &8000 สำหรับ BASIC ที่ทำงานบนโปรเซสเซอร์ตัวที่สอง และ &B800 สำหรับ HIBASIC ที่ทำงานบนโปรเซสเซอร์ตัวที่สอง
สถานการณ์ที่คล้ายกันนี้เกิดขึ้นในระบบปฏิบัติการ RISC OSซึ่งอาจมีภาษา BASIC ปกติหรือ BASIC64 (ซึ่งให้ความแม่นยำทางคณิตศาสตร์สูงกว่า) ภาษา BASIC ปกติจะระบุตัวเองว่า "BASIC V" และ BASIC64 จะระบุตัวเองว่า "BASIC VI" ดังนั้น ข้อความต่อไปนี้ (ใช้ก่อนที่จะเกิดข้อผิดพลาดใดๆ) จะช่วยแยกแยะความแตกต่างระหว่างสองภาษาได้:
ถ้าINSTR ( REPORT$ , "VI" ) แล้วพิมพ์"BASIC64" มิฉะนั้นพิมพ์"BASIC"มีวิธีที่ดีกว่านี้ ลองดูที่BeebWikiในเกือบทุกกรณี คุณไม่จำเป็นต้องทดสอบว่าโปรแกรมของคุณทำงานบน BASIC หรือแพลตฟอร์มใด เพียงแค่เรียกใช้ฟังก์ชันและอ่านข้อมูลที่ส่งกลับมา แล้วจัดการกับมัน
Acorn Archimedes (RISC OS)
ด้วยการเปลี่ยนไปใช้ CPU ARM 32 บิตและการยกเลิกข้อจำกัดขนาดโค้ด BASIC 16 KB ทำให้มีการเพิ่มคุณสมบัติใหม่ ๆ มากมาย[ 15 ] BASIC V เวอร์ชัน 1.04 มีความยาว 61 KB เวอร์ชันปัจจุบันของ RISC OS ยังคงมีตัวแปลภาษา BBC BASIC V ซอร์สโค้ด ของ BBC BASIC V เวอร์ชัน RISC OS 5 ได้รับการเผยแพร่ภายใต้ใบอนุญาต Apache 2.0 โดยRISC OS Open
คำสั่งและฟังก์ชันใหม่ที่ได้รับการสนับสนุน ได้แก่:
WHILE-ENDWHILEIF-THEN-ELSE-ENDIFCASE-OF-WHEN-OTHERWISE-ENDCASE,RETURNพารามิเตอร์ในขั้นตอนต่างๆ- อาร์เรย์ท้องถิ่น
- ไลบรารีขั้นตอน (
LIBRARY,INSTALLและOVERLAY), LOCAL DATAและLOCAL ERRORผู้ควบคุม- ญาติคน
RESTOREหนึ่ง - การดำเนินการกับอาร์เรย์
- ผู้ประกอบการรายใหม่
STEP TRACE,- คำสั่งสำหรับระบบเสียงใหม่ เมาส์ และกราฟิก
คำสั่งกราฟิกเข้ากันได้กับเวอร์ชันก่อนหน้า อย่างสมบูรณ์ ส่วน คำสั่งเสียงนั้นเข้ากันได้น้อยกว่า ตัวอย่างเช่นENVELOPEคำหลักตั้งแต่ BASIC V เป็นต้นไปเป็นคำสั่งที่รับพารามิเตอร์ตัวเลข 14 ตัวและแทบจะไม่ได้ทำอะไรเลย—เช่นเดียวกับในเวอร์ชันเก่าๆ ที่เรียกใช้ OS_Word 8 แต่คำสั่งนั้นไม่ได้ทำอะไรเลยบน RISC OS [ 16 ]ตัวประกอบภาษาแอสเซมเบลอร์ 6502 แบบอินไลน์ถูกแทนที่ด้วย ตัวประกอบภาษาแอสเซมเบลอร์ ARM Acorn กล่าวว่า BASIC V นั้น "แน่นอนว่าเป็น BASIC ที่ถูกตีความที่เร็วที่สุดในโลก" และ "น่าจะเป็น BASIC ที่ทรงพลังที่สุดที่พบในคอมพิวเตอร์ใดๆ"
BASIC VI เป็นเวอร์ชันหนึ่งของ BASIC V ที่รองรับ ตัวเลขทศนิยมในรูปแบบ IEEE 754ขนาด 8 ไบต์ ซึ่งแตกต่างจากรูปแบบมาตรฐาน 5 ไบต์ที่นำมาใช้ใน BASIC I
BBC BASIC V และ VI ถูกติดตั้งมาเป็นมาตรฐานในAcorn ArchimedesและRiscPCนอกจากนี้ยังมีเวอร์ชันของ BBC BASIC V ที่สามารถใช้งานบนโปรเซสเซอร์ ARM ตัวที่สองสำหรับ BBC Micro ได้อีกด้วย
คอมไพเลอร์สำหรับ BBC BASIC V ถูกสร้างขึ้นโดย Paul Fellows หัวหน้าทีมพัฒนา Arthur OS เรียกว่า Archimedes BASIC Compiler และเผยแพร่ครั้งแรกโดย DABS Press [ 17 ] ABC สามารถใช้งานภาษาได้เกือบทั้งหมด ยกเว้นฟังก์ชัน EVAL ที่ต้องใช้การตีความโปรแกรมแบบเรียลไทม์อย่างหลีกเลี่ยงไม่ได้ หลักฐานแสดงถึงความสมบูรณ์ของมันคือ สามารถรองรับไวยากรณ์แอสเซมเบลอร์แบบอินไลน์ได้ คอมไพเลอร์เขียนด้วย BBC BASIC V แอปพลิเคชันจำนวนมากที่เขียนขึ้นเพื่อใช้งานภายใต้ตัวแปลภาษาได้รับประโยชน์จากประสิทธิภาพที่เพิ่มขึ้น ทำให้ BBC BASIC V เทียบเท่ากับภาษาอื่นๆ สำหรับการพัฒนาแอปพลิเคชันอย่างจริงจัง
แพลตฟอร์มอื่นๆ
BBC BASIC ยังได้รับการพอร์ตไปยังแพลตฟอร์มอื่นๆ อีกมากมาย[ 18 ]
ซอฟต์แวร์ BBC BASIC เวอร์ชัน NS32016ถูกจัดมาให้พร้อมกับตัวประมวลผลร่วม Acorn 32016 และ Acorn ABC
นอกจากเวอร์ชันของ BBC BASIC ที่มาพร้อมกับ โปรเซสเซอร์ตัวที่สอง Zilog Z80 ของ BBC Microแล้ว ยังมีเวอร์ชันของ BBC BASIC ที่ใช้ Z80 สำหรับ ระบบที่ใช้ CP/M อีกด้วย เวอร์ชันของ BBC BASIC ที่ใช้ Zilog Z80 ยังถูกใช้ใน คอมพิวเตอร์ตั้งโต๊ะ Tiki 100 , คอมพิวเตอร์ พกพา Cambridge Z88และ คอมพิวเตอร์โน้ตบุ๊ก Amstrad NC100 Notepad และAmstrad NC200 Notebook เวอร์ชันนี้ได้รับการใช้งานในเครื่องคิดเลขกราฟิกซีรีส์TI-83 PlusและTI-84 Plusด้วยความพยายามของ J. G. Harston (ซึ่งรับผิดชอบเวอร์ชันPDP-11 [ 19 ]ที่ได้รับการอัปเดตในปี 2025 โดยใช้ BBC BASICV IV และส่วนเพิ่มเติมบางส่วนจากส่วนขยาย BBC BASIC V [ 20 ] ) เวอร์ชันของBBC BASICสำหรับZX Spectrumได้รับการเผยแพร่ในเดือนมกราคม 2002 พร้อมกับการปรับปรุงมากมายในเวอร์ชันต่อมา
BBC BASIC ยังถูกนำไปใช้สำหรับMS-DOSในชื่อBBCBASIC (86)ซึ่งมุ่งเน้นความเข้ากันได้สูงสุดกับ BBC Micro และBBasicพร้อมการปรับปรุงเพิ่มเติมโดยอิงจาก BASIC II
BBC BASIC for Windows เป็น เวอร์ชันของ BBC BASIC ที่ผสานรวมกับส่วนติดต่อผู้ใช้แบบกราฟิก ของ Windows ซึ่งสร้างโดยRichard Russellผู้พัฒนาเวอร์ชัน Z80 และx86โดยเปิดตัวในปี 2001 แม้ว่าจะรองรับข้อกำหนดของ BBC BASIC ดั้งเดิม (BASIC IV) เกือบทั้งหมด แต่เวอร์ชัน Windows ก็รองรับไวยากรณ์ของ BASIC V/VI ส่วนใหญ่ รวมถึงคุณสมบัติขั้นสูงบางอย่างของตัวเองด้วย คุณสมบัติเฉพาะของ BBC BASIC for Windows ได้แก่ การรองรับตัวแปลภาษาสำหรับประเภทเรคอร์ด/โครงสร้าง และความสามารถในการเรียกใช้ รูทีน API ของ Windows หรือรูทีนในDLL ภายนอก เวอร์ชันล่าสุดได้รวมคุณสมบัติขั้นสูงที่เทียบได้กับภาษาต่างๆ เช่นCและไลบรารี ภายนอก ได้เพิ่มการรองรับอ็อบเจ็กต์เมื่อเร็วๆ นี้
BBC BASIC สำหรับSDLได้รับการพัฒนาโดย Richard T. Russell เช่นกัน และเข้ากันได้กับ BBC BASIC สำหรับ Windows รุ่นก่อนหน้าเป็นส่วนใหญ่ โดยมีคุณสมบัติใหม่และขั้นสูงมากมายร่วมกับภาษาดังกล่าว รวมถึงโครงสร้างข้อมูล ตัวแปร PRIVATE คำสั่ง EXIT สตริงยาว การขัดจังหวะเหตุการณ์ ตัวดำเนินการที่อยู่ของ ตัวแปรไบต์ อักขระต่อบรรทัด การเรียกใช้ขั้นตอนและฟังก์ชันทางอ้อม และความแม่นยำเชิงตัวเลขที่ได้รับการปรับปรุง เวอร์ชันแรกเปิดตัวในเดือนกุมภาพันธ์ 2019 และยังคงได้รับการพัฒนาอย่างต่อเนื่องจนถึงเดือนกันยายน 2025 [ 21 ] [ 22 ] BBC BASIC สำหรับ SDL 2.0รองรับ Windows, MacOS, Linux, Raspberry Pi OS, Android, iOS และอุปกรณ์เคลื่อนที่ที่รองรับไลบรารี SDL [ 9 ]รวมถึงเวอร์ชันที่อนุญาตให้เรียกใช้โปรแกรม BBC BASIC เป็นแอปเพล็ตในเว็บเพจผ่านเฟรมเวิร์ก Web Assembly โปรแกรมสามารถเรียกใช้งานได้ผ่านทางตัวแปลภาษา หรือคอมไพล์เป็นชุดแอปพลิเคชันแบบสแตนด์อโลน ซึ่งจะทำงานได้โดยไม่ต้องติดตั้ง BBC BASIC (.exe ใน Windows, .dmg ใน MacOS, .zip ใน Linux หรือ Raspberry Pi OS และ .apk ใน Android) นอกจากนี้ยังคงรักษาความเข้ากันได้สูงกับ BBC Microcomputer รวมถึงการจำลองคำสั่ง SOUND และ ENVELOPE และโหมดหน้าจอ MODE 7 (เทเลเท็กซ์) BBC BASIC สำหรับ SDL 2.0 มีแอสเซมเบลอร์ที่ขึ้นอยู่กับ CPU ในแพลตฟอร์ม: x86 (32 บิตหรือ 64 บิต) สำหรับ Windows, MacOS หรือ Linux; ARM (32 บิตหรือ 64 บิต) สำหรับ Raspberry Pi ในกรณีของ Android แอสเซมเบลอร์จะเป็น ARM หรือ x86 ตามความเหมาะสม สามารถเข้าถึงฟังก์ชัน Application Program Interface (API) ได้จากทั้งโค้ด BASIC และโค้ดแอสเซมเบลอร์ ทำให้โปรแกรมเมอร์ที่มีประสบการณ์สามารถสร้างแอปพลิเคชันที่ซับซ้อนได้
นอกจากนี้ยังมีโคลนGPLของ BBC BASIC ที่ชื่อBrandyซึ่งเขียนด้วยภาษา C แบบพกพา [ 23 ] [ 24 ] การแยกสาขาของสิ่งนี้Matrix Brandyยังคงอยู่ระหว่างการพัฒนาอย่างต่อเนื่อง[ 25 ]
บริษัท Ariadne Software ผลิตโปรแกรมจำลอง BBC Micro สำหรับAmiga ให้กับ บริษัท CBM (สหราชอาณาจักร) แม้ว่าจะทำงานได้เร็วมาก แต่ก็ไม่ได้จำลองการทำงานของชิป 6502 อย่างเต็มประสิทธิภาพ ดังนั้นโค้ดภาษาแอสเซมบลีจึงทำงานช้ากว่าเครื่อง BBC จริง ในขณะที่โปรแกรม BASIC จะทำงานเร็วกว่ามาก เนื่องจากวิธีการทำงานร่วมกันระหว่าง BASIC ที่ได้รับการปรับแต่งและโปรแกรมจำลอง 6502 ทำให้เกมเชิงพาณิชย์เกือบทั้งหมดไม่สามารถทำงานได้ แต่โค้ดที่ดีและซอฟต์แวร์เพื่อการศึกษาโดยทั่วไปก็ใช้งานได้ นอกจากนี้ยังใช้ รูปแบบตัวเลข ทศนิยมที่มี ความแม่นยำน้อยกว่าเล็กน้อย ในช่วงหนึ่ง โปรแกรมนี้ถูกรวมอยู่ในชุดพิเศษสำหรับโรงเรียนของAmiga 500โดยหวังว่าโรงเรียนจะเปลี่ยนเครื่อง BBC B รุ่นเก่าเป็น Amiga 500
นอกจากนี้ Benjamin Ryves ยังได้สร้างเวอร์ชันของ BBC BASIC V (Z80) สำหรับเครื่องคิดเลขตระกูล TI-83/84+ ของTexas Instruments อีกด้วย
โปรแกรมShadoเวอร์ชันCommodore 64ผลิตโดยบริษัทซอฟต์แวร์ขนาดเล็ก Aztec Software ในช่วงต้นทศวรรษ 1980 [ 26 ]เวอร์ชันที่แก้ไขของ HI-BASIC ที่ใช้ Acorn 6502 ยังได้รับการทดลองใช้งานบน C64 ด้วยอินเทอร์เฟซไปยัง C64 Kernel ซึ่งแทนที่การเรียกใช้ Acorn MOS ที่ทำไว้ก่อนหน้านี้
นอกจากนี้ยังมีความพยายามที่จะทำให้ BBC BASIC เวอร์ชันที่ใช้ชิป 6502 สามารถใช้งานได้บนApple IIโดยApplecornเป็นหนึ่งในความพยายามเหล่านั้น
BBC BASIC เป็นภาษาโปรแกรมที่ใช้ใน Agon Light ซึ่งเป็นคอมพิวเตอร์บอร์ดเดี่ยวและไมโครคอนโทรลเลอร์แบบโอเพน ซอร์ส 8 บิต ที่ใช้ Z80ออกแบบโดย Bernardo Kastrup และวางจำหน่ายในปี 2022 [ 27 ]
ตัวอย่างโค้ด
REM Acorn Archimedes เวอร์ชันON ERR OR : ON ERR OR OFF : PRINT REPORT$ ; " ที่บรรทัด " ; ERL : END MODE MODE : REM ล้างหน้าจอPROC _triangle ( 700 , 700 , 500 , 200 , 500 , 900 , "F" ) ENDDEF PROC _triangle ( x1% , y1% , x2% , y2% , x3% , y3% , fill$ ) LOCAL triangle_fill_plot_code% triangle_fill_plot_code% = &55 MOVE x1% , y1% DRAW x2% , y2% IF fill$ = "F" THEN PLOT triangle_fill_plot_code% , x3% , y3% ELSE DRAW x3% , y3% : DRAW x1% , y1% ENDIF ENDPROC : REM of PROC_triangle()ลิงก์ภายนอก
- บ้านของ BBC BASIC
- แหล่งรวมผลิตภัณฑ์ BBC BASIC: ผลิตภัณฑ์ต่างๆ
- BBC BASIC ต่อ CPU/OS
- การใช้งาน TI-83+ และ TI-84+ ของ BBC BASIC
- เว็บไซต์สำหรับผู้ใช้งาน Amstrad NC
- คู่มือการเขียนโปรแกรมในรูปแบบอีบุ๊ก พร้อมวิธีการเชื่อมต่อ
- คู่มืออ้างอิง BBC BASIC (สำหรับ RISC OS)
- คู่มือผู้ใช้ BBC microcomputer (HTML)
- คู่มือผู้ใช้ BBC microcomputer (PDF)
- โค้ด Python เทียบกับ BBC Basic สำหรับ Windows
- RT Russell's Z80 BBC Basic เปิดให้ใช้งานแบบโอเพนซอร์สแล้วที่GitHub
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ บีบีซี เบสิค
BBC BASIC เป็น ภาษาโปรแกรม BASIC เวอร์ชัน ที่ใช้การตีความ (interpreted) พัฒนาโดย บริษัท Acorn Computers Ltd.
ภาษาดั้งเดิม
ที่ วิทยาลัยดาร์ทมัธ อาจารย์คณิตศาสตร์สองท่าน [ 1 ] ต้องการให้นักเรียนทุกคนสามารถเขียนโปรแกรมบนคอมพิวเตอร์ของวิทยาลัยเครื่องใหม่ได้ ภาษาโปรแกรมระดับสูงที่มีอยู่ เช่น FORTRAN และ COBOL...
การมีส่วนร่วมของบีบีซี
ในช่วงทศวรรษ 1970 แผนกการศึกษาต่อเนื่องของ BBC กำลังพิจารณาว่าความก้าวหน้าในเทคโนโลยีที่เกี่ยวข้องกับคอมพิวเตอร์จะส่งผลกระทบต่อสังคมอังกฤษอย่างไร รายงานไมโครอิเล็กทรอนิกส์ [ 4 ] ของพวกเขา ในปี 1979 ต่อ คณะกรรมการบริการกำลังคนได้...
การมีส่วนร่วมของ Acorn
Acorn พัฒนา System BASIC และ Atom BASIC เป็นครั้งแรก สำหรับคอมพิวเตอร์ไมโครโปรเซสเซอร์ 6502 รุ่นแรกๆ [ 7 ] ที่ขายให้กับลูกค้าที่ประกอบเอง ด้วยการพัฒนา Proton เป็น โปรเซสเซอร์ส่วนหน้า Acorn จึงออกแบบเพื่อการประมวลผลที่มีประสิทธิภาพมากขึ้น