6502

From Atariki

Revision as of 13:24, 26 wrz 2006; view current revision
←Older revision | Newer revision→
Jump to: navigation, search

Procesor produkowany przez MOS Technology. Pierwszy raz wprowadzony do produkcji we wrześniu 1975 roku, wytwarzany przy wykorzystaniu technologii NMOS. Procesor w odróżnieniu od innych rówieśników nie był budowany w oparciu o mikrokod, był wewnętrznie prostszy i mógł pracować z mniejszymi częstotliwościami zewnętrznymi (zwykle pomiędzy 1 a 2 MHz), osiągając przy tym porównywalną wydajność. Obniżało to koszt układów z nim współpracujących, wykorzystywanych w komputerze.

Parametry

  • ośmiobitowa szyna danych
  • szesnastobitowe adresowanie
  • 56 udokumentowanych rozkazów
  • 13 trybów adresowania
  • jeden ośmiobitowy rejestr ogólnego przeznaczenia (A - akumulator)
  • dwa ośmiobitowe rejestry indeksujące (X i Y)
  • ośmiobitowy rejestr statusu - P
  • ośmiobitowy wskaźnik stosu - S
  • szesnastobitowy licznik programu - PC

W przestrzeni adresowej 6502 jest wyróźniony obszar przeznaczony na stos - jest to obszar od $0100 do $01FF.

Ciekawostki

  • Procesor ma pewną liczbę nieudokumentowanych rozkazów. Szczegóły działania części z nich zależą od konkretnej wersji procesora. Dlatego, mimo że zastępują one w niektórych przypadkach kilka rozkazów standardowych, nie jest zalecane ich używanie.
  • Listing programu przeznaczony dla procesora 6502 był wykorzystany w filmie "The Terminator" (1984, pol. Elektroniczny Morderca) przy wyświetlaniu obrazu z kamery Terminatora T800 Model 101. Jest to listing programu dla komputera Apple II.
  • Robot Bender, bohater serialu animowanego Futurama, będącego jedną z głównych atrakcji czwartego Sztabu Małopolska, ma "mózg" zbudowany na procesorze 6502, o czym dowiadujemy się w epizodzie "Fry & the Slurm Factory".

Błędy w 6502

  • wystąpienie przerwania nie wyłącza trybu dziesiętnego ALU
  • dodawanie i odejmowanie w trybie dziesiętnym ustawia znaczniki N i Z nieodpowiednio dla uzyskanego wyniku dziesiętnego (odzwierciedlają one cząstkowy wynik binarny operacji, przed korekcją dziesiętną)
  • rozkaz JMP ($xxFF) pobierze adres skoku z komórek $xxFF/$xx00 zamiast z $xxFF/$xy00.
  • jednoczesne wystąpienie przerwania NMI oraz IRQ powoduje, że to drugie zostane zignorowane.

Błędów tych pozbawione są późniejsze wersje procesora, tj. 65C02 oraz 65C816.

Zobacz także


Ten artykuł to tylko zalążek. Możesz pomóc rozwojowi Atariki poprzez rozszerzenie go o więcej informacji.

Personal tools