PL/M - PL/M

PL/M
geliştirici Gary Kildall , Mikrobilgisayar Uygulamaları Ortakları
İlk ortaya çıktı 1973 ( 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

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 .