基本介紹
- 中文名:B語言
- 外文名:The B Programming Language
- 創始人:Ken Thompson
- 領域:計算機
- 產生:小型計算機
- 創始時間:1969年
- 檔案後綴名:.b
- 前身:BCPL語言
什麼是B語言?,歷史,示例,
什麼是B語言?
B語言是一種無類型語言,所有的數據都和機器字相對應,並且程式設計師可以直接通過記憶體地址操作記憶體。B語言最初在DEC的PDP-7和PDP-11小型機的早期Unix版本和Honeywell機器的GCOS系統上實現。
B語言的無類型特性使得其在PDP-11機器上無法以比較優雅的方式訪問字元類型,因而從1971年開始,Dennis Ritchie開始對B語言進行改造,其中最重要的是引入了數據類型的概念,這些改造最終使B語言演化為了計算機發展歷史上最為重要的程式語言——C語言。
時至今日,除了在一些古老的大型機或是特殊的嵌入式平台上,B語言已經芳蹤難覓了。但B語言在程式語言發展歷史上重要的承前啟後的里程碑地位,卻將永遠為人們銘記。
歷史
和BCPL以及FORTH類似,B語言只有一種數據類型,計算機字。大部分操作將其作為整數對待(例如進行+、-、*、/操作),但其餘操作將其作為一個復引用的記憶體地址。在許多方面B語言更像是一個早期版本的C語言,它還包括了一些庫函式,其作用類似於C語言中的標準輸入/輸出函式館。
示例
下面是來自Ken Thompson的B語言用戶手冊的例子:
/* The following function will print a non-negative number, n, to
the base b, where 2<=b<=10, This routine uses the fact that
in the ANSCII character set, the digits 0 to 9 have sequential
code values. */
printn(n,b) {
extrn putchar;
auto a;
if(a=n/b) /* assignment, not test for equality */
printn(a, b); /* recursive */
putchar(n%b + '0');
}