6502

From Atariki

(Różnice między wersjami)
Jump to: navigation, search
Wersja z dnia 13:04, 11 gru 2005
Piotrv (Dyskusja | wkład)
(Ciekawostki - czasami -> w niektórych przypadkach)
← Previous diff
Wersja z dnia 13:36, 11 gru 2005
KMK (Dyskusja | wkład)

Next diff →
Linia 21: Linia 21:
* 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ą) * 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. * 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]]. Błędów tych pozbawione są późniejsze wersje procesora, tj. [[65C02]] oraz [[65C816]].

Wersja z dnia 13:36, 11 gru 2005

6502 to procesor produkowany przez MOS Technology. Pierwszy raz wprowadzony do produkcji we wrześniu 1975 roku. 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 (akumulator)
  • dwa ośmiobitowe rejestry indeksujące (X i Y)
  • ośmiobitowy rejestr statusu
  • ośmiobitowy wskaźnik stosu
  • szesnastobitowy licznik programu

Ciekawostki

  • Procesor ma pewną liczbę nieudokumentowanych rozkazów. Szczegóły działania części z nich zależą od konkretnej wersji procesora. Mimo że zastępują one w niektórych przypadkach kilka rozkazów standardowych, to nie jest zalecane ich używanie.
  • Listing programu przeznaczony dla procesora klasy 6502 był wykorzystany w filmie "The Terminator" (1984, pol. Elektroniczny Morderca) przy wyświetlaniu obrazu z kamery Terminatora T800 Model 101.

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