PL/M - PL/M
geliştirici | Gary Kildall , Mikrobilgisayar Uygulamaları Ortakları |
---|---|
İlk ortaya çıktı | 1973 |
Tarafından etkilenmiş | |
ALGOL , PL/I , XPL |
PL / M programlama dili (bir kısaltmadır P rogramming L için anguage M icrocomputers ) üst düzey bir olduğunu dil tarafından tasarlanan ve geliştirilen Gary Kildall için 1973 yılında Hank Smith de Intel onun için mikroişlemci .
genel bakış
Dil, PL/I , ALGOL ve XPL'den fikirleri içeriyordu ve entegre bir makro işlemciye sahipti . Washington Üniversitesi mezunu olan Kildall, Burroughs B5500 bilgisayarını kullanmıştı ve bu nedenle sistem programlama için ESPOL gibi yüksek seviyeli dillerin potansiyelinin farkındaydı .
Pascal , C veya BASIC gibi diğer çağdaş dillerin aksine , PL/M'nin standart girdi veya çıktı rutinleri yoktu. Hedef mikroişlemcilere özgü düşük seviyeli donanıma yönelik özellikler içeriyordu ve bu nedenle bellekteki herhangi bir yere, G/Ç bağlantı noktalarına ve işlemci kesme bayraklarına doğrudan erişimi çok verimli bir şekilde destekleyebilirdi. PL/M, mikroişlemci tabanlı bilgisayarlar için ilk üst düzey programlama diliydi ve CP/M işletim sisteminin birleştiricide yazılmayan bölümleri için orijinal uygulama diliydi. Birçok Intel ve Zilog Z80 tabanlı gömülü sistem , 1970'lerde ve 1980'lerde PL/M'de programlandı. Örneğin , CISC IBM AS/400'ün Hizmet İşlemcisi bileşeninin sabit yazılımı PL/M'de yazılmıştır.
Orijinal PL/M derleyicisi Intel 8008'i hedef aldı . Güncellenmiş bir sürüm (PL/M-80) 8080 işlemcisi için kod üretti ve bu kod aynı zamanda daha yeni Intel 8085'te ve Zilog Z80 ailesinde ( 8080 ile geriye dönük uyumlu olduğu için) çalışacaktı . Daha sonra Intel 8048 ve Intel 8051 -mikrodenetleyici ailesi (PL/M-51) ile 8086 (8088) (PL/M-86), 80186 (80188) ve sonraki 8086 tabanlı işlemciler için derleyiciler izledi . gelişmiş 80286 ve 32-bit 80386 . Intel 8061 ve 8096 / MCS-96 mimari ailesi (PL/M-96) gibi daha sonraki mikrodenetleyiciler için geliştirilmiş PL/M derleyicileri de vardı .
Bazı PL / M derleyiciler onlar Intel için örneğin aynı mikro işlemci kullanan sistemlerde koştu, yani "yerli" iken ISIS işletim sistemi de vardı, çapraz derleyici örneği için, PLMX gibi diğer çalışma ortamları ile ilgili hangi ran Dijital Araştırma CP / M, Microsoft 'ın DOS ve Digital Equipment Corporation, ' ın VAX / VMS .
PL/M artık Intel tarafından desteklenmemektedir, ancak PL/M-to-C kaynak kodu çevirmenleri gibi satış sonrası araçlar mevcuttur.
PL/M örnek kodu
FIND: PROCEDURE(PA,PB) BYTE;
DECLARE (PA,PB) BYTE;
/* FIND THE STRING IN SCRATCH STARTING AT PA AND ENDING AT PB */
DECLARE J ADDRESS,
(K, MATCH) BYTE;
J = BACK ;
MATCH = FALSE;
DO WHILE NOT MATCH AND (MAXM > J);
LAST,J = J + 1; /* START SCAN AT J */
K = PA ; /* ATTEMPT STRING MATCH AT K */
DO WHILE SCRATCH(K) = MEMORY(LAST) AND
NOT (MATCH := K = PB);
/* MATCHED ONE MORE CHARACTER */
K = K + 1; LAST = LAST + 1;
END;
END;
IF MATCH THEN /* MOVE STORAGE */
DO; LAST = LAST - 1; CALL MOVER;
END;
RETURN MATCH;
END FIND;
Referanslar
daha fazla okuma
- PL/M-80 Programlama Kılavuzu (PDF) . Intel Şirketi . Ocak 1980 [1976]. Belge # 98-268B. 2019-12-21 tarihinde orijinalinden arşivlendi (PDF) . 2020-01-29 alındı .
- MCS-8 PL/M Programlama Kılavuzu (PDF) . Intel Şirketi . Eylül 1973. Orijinalinden 2019-12-21 tarihinde arşivlendi (PDF) . 2020-02-02 alındı .
- PL/M 386 Programcı Kılavuzu (PDF) . RadiSys Şirketi . Aralık 1999. Orijinalinden 2006-08-14 tarihinde arşivlendi (PDF) . 2020-01-29 alındı .(Not. BNF gösteriminde PL/M'nin tüm sözdizimini içerir .)
- McCracken, Daniel D. (1978). Mikrobilgisayar Uygulamaları için PL/M Programlama Kılavuzu . Pearson / Addison-Wesley .
Bu makale, 1 Kasım 2008'den önce Ücretsiz Çevrimiçi Hesaplama Sözlüğü'nden alınan ve GFDL , sürüm 1.3 veya sonraki sürümlerin "yeniden lisanslama" koşulları altında birleştirilmiş materyale dayanmaktadır .