6502
From Atariki
(Różnice między wersjami)
												
			
			| Wersja z dnia 13:36, 11 gru 2005 KMK (Dyskusja | wkład) ← Previous diff  | 
				Wersja z dnia 13:37, 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. | + | * 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:37, 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
- 6502C
 - 65C02
 - 65C816
 - Przerwania
 - 6502.org
 - Zdjęcia i specyfikacja na stronie cpu-collection.de
 - CC65 - darmowy cross-kompilator C dla procesora 6502
 
Ten artykuł to tylko zalążek. Możesz pomóc rozwojowi Atariki poprzez rozszerzenie go o więcej informacji.
