PDP-11

Bir PDP-11 a, bilgisayar modeli PDP (arasında programlanabilir veri işlemci ) inşa hattı Digital Equipment Corporation arasında (DEC) 1970 ve 1993 .

Tüm PDP-11'ler 16 bittir ve mini bilgisayarlar sınıfına girer . Modülerliği, mükemmel bir kalite / fiyat oranını birleştirdikleri ve kullanımları tek bir uygulama sektörüyle sınırlı olmadığı için son derece popülerdi: Muhasebe firmalarından çok veri toplama için fizik laboratuarlarında da bulundu. Son olarak, üniversite dünyası da bu makinelerden çok sayıda satın aldı.

Bu aralık, Unix işletim sisteminin ve C dilinin geliştirilmesi için temel oluşturduğu için de popülerdir . C'nin ön artırımı (++ i) ve sonradan artırımı (i ++), özellikle PDP-11 makine dilinin bu olasılığından yararlanmayı mümkün kıldı.

Aynı zamanda , dünya çapında birçok laboratuvarı ve mühendislik okulunu donatan IBM 1130 , 1969'da piyasaya sürüldüğünde, IBM tarafından önerilen bir halefi olmadan yaşlanmaya başladığında da oldu. Katkıda bulunan devasa özgür yazılım kitaplığı dışında, 1130, hız veya maliyet açısından PDP-11'e göre özel bir avantaja sahip değildi.

Diğerleri gibi, bu aralık da, bellek adres alanı çok sınırlı olduğu için ortadan kalktı (16 ila 18 bit , en fazla 22). Bunun yerine , 32 bit Virtual Address eXtension anlamına gelen VAX geldi . VAX operasyon moduna sahip "uyumlu PDP-11".

Mimari

Otobüs

İlk PDP-11'ler UNIBUS otobüsünün etrafına inşa edildi . Bazı yongalarda bulunan ve LSI-11 olarak adlandırılan komut setinin bulunduğu en son modeller, Q-BUS adı verilen (daha dar) veri yoluna dayanmaktadır .

Kayıtlar

İşlemci PDP-11 8 sahiptir kayıtları kayıt 7: özel kullanımlara sahip ikisi, bilgisayar (için Program Sayacı veya program sayacının) ve kayıt 6, işaretçi bir yığın (SP'den, yığın Pointer ). Diğer kayıtlar R0, R1, ..., R5 ve genel kullanım içindir. Son kayıt, durum kaydıdır.

15 0 +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | R0 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | R1 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | R2 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | R3 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | R4 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | R5 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | R6 (SP) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | R7 (PC) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ \_____________________________________________________________/ registres (16 bits) 15 0 +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | CM | PM | R | | PRI | T | N | Z | V | C | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ \_____________________________________________________________/ registre d'état(16 bits)

Durum kaydındaki bayrakların anlamları şunlardır:

  1. N Negatif
  2. Z Sıfır
  3. V ( oVerflow ) taşması
  4. C ( Taşı ) tut

Tüm PDP-11 modelleri tam olarak aynı tip durum kayıtlarına sahip değildir, burada gösterilenler daha gelişmiş modellere karşılık gelir.

Veri tipleri

Üç sınıf vardır:

bayt (8 bit) kelime (16 bit) uzun tamsayı (32 bit, iki kayıt) basit hassasiyet çift ​​kesinlik çok farklı formatlar ...

Komut setleri

Üç olası komut seti vardır:

  1. Standart PDP-11 komut seti, talimatları yedi kategoriye ayrılabilir:
    1. Tek işlenen
    2. Çift operand
    3. Bağ
    4. Atlamalar ve alt programlar
    5. Ambarlar
    6. Çeşitli talimatlar
    7. Durum kodları
  2. bilimsel hesaplama için kayan nokta aritmetiği için komut seti (isteğe bağlı)
  3. kurumsal bilgi işlem için yönerge seti (isteğe bağlı)

Her komut, gerçekleştirilecek bir işlemi, muhtemelen işlenenleri (kayıtlar, vb.) Ve bir adresleme modunu belirtir .

Talimat biçimi

PDP-11, 7 format tanımlar. Aşağıda açıklanan tüm formatlarda:

Mod alanının yorumlanması

Mod alanı 3 bit üzerinde tutulur. Örneğin, iki işlenen bir talimat, her biri yazmaç alanının nasıl yorumlanacağını açıklayan iki yazmaç alanı ve iki mod alanı içerir.

Yalnızca en soldaki bitleri ele alırsak (üçüncüsü, yönlendirme bitidir, aşağıya bakın):

Modun en sağdaki biti, yönlendirme bitidir: eğer bu bit bir ise, adresleme dolaylı olacaktır:

"Anında" mod olmadığına dikkat edilmelidir: bu mod 2 kullanılarak gerçekleştirilir (otomatik artış). Aslında, PC talimatı takip eden kelimeyi işaret eder ve artım sonrası , çalıştırılan talimatı takip eden anlık değer işlemci tarafından yüklendikten sonra bir sonraki talimata geçmesini sağlar .
PC'yi bir kayıt defteri olarak kullanmak bu nedenle 4 yeni mod oluşturur:

Arttırılmış ve önceden azaltılmış adresleme modları özellikle SP: - (SP) yığınlama ve (SP) + istiflemeyi kaldırmaya izin veren yığın işaretçisi ile bağlantılı olarak kullanılacaktır.

Bir işlenene talimatlar

15 6 5 3 2 0 +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | code opération | mode | Rn | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ \_____________________/ destination

Örnek: CLR (R0) 005010

İki işlenen talimatı

15 11 9 8 6 5 3 2 0 +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | code opération| mode | Rn | mode | Rn | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ \_____________________/ \_____________________/ source destination

Örnek: ADD R0, (R1)

Not: bazı komutlar (ASH, ASHC, MUL, DIV) kaynak olarak yalnızca bir kayıt içerebilir, bu durumda işlem kodu bit 9'dan bit 15'e uzanır:

15 11 9 8 6 5 3 2 0 +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | code opération | Rn | mode | Rn | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ \_________/ \_____________________/ source destination

Bağlantılar

15 8 7 0 +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | code opération| | déplacement | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+

Yer değiştirme alanı işaretlidir, bu nedenle -128 ila +127 baytlık bir ofsete izin verilir.

Alt rutinlerin atlamaları ve çağrıları / geri dönüşleri

JSR (Alt Yordama Atla) talimatı için:

15 9 8 6 5 3 2 0 +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | code opération | Rn | mode | Rn | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ \_________/ \_____________________/ lien destination

RTS (Alt Programdan Dönüş) talimatı için:

15 3 2 0 +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | code opération | Rn | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ \_________/ lien

Tuzaklar ve Kesintiler

EMT, TRAP, BPT, IOT, CSM, RTI, RTT: belirli bir format yok.

Durum kodları

CLC, CLV, CLZ, CLN, CCC, SEC, SEV, SEZ, SEN, SEC: belirli bir format yok.

15 5 3 2 1 0 +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | code opération | O | N | Z | V | C | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+

Çeşitli talimatlar

DUR, BEKLE, SIFIRLA, MTPD, MTPI, MFPD, MFPI, MTPS, MFPS, MFPT: belirli bir format yok.

Kayan sayılar komut seti

Bu seçenek FPP veya FP-11 , FP için Floating Point olarak adlandırılır . Hesaplamalar için 6 yeni 64-bit yazmaç (iki kez 32) ve diğer bazı özel olanlar (bir durum kaydı gibi) ekler. Yüzen işlemcinin çalışması, PDP-11'in standart işlemcisinden farklıdır: yüzen işlemci bellekteki talimatı aldığında küçük bir gecikmenin yanı sıra, iki işlemci bağımsız olarak hesaplama yapar.

Bu yeni talimatlar, mikro kodu değiştirerek kullanılabilir .

Yönetim talimat seti

Ticari Yönerge Seti için CIS olarak adlandırılan bu talimatlar dizisi, esas olarak karakter dizilerinin yönetimine odaklanan bu talimatlar, genellikle yönetim programlarının gerektirdiği işlemleri hızlandırmak için tasarlanmıştır ( örneğin COBOL'de yazılmıştır ).

Sayıların karakter biçimindeki temsilinin ikili değerlere dönüştürülmesine (ve tersi) veya doğrudan "karakter dizisi" temsillerinde hesaplamalara izin verir.

Simülatörler

İşletim sistemleri

Notlar ve referanslar

Ekler

İlgili Makaleler

Dış bağlantılar