Jak działa MMX ?

2015-01-09 16:24
LogOut321
0

Mam pytanie, mianowicie czy dobrze rozumiem działanie MMX. Mam to wykonać w swoim mikroprocesorze a nie spotkałem się jeszcze z czymś takim.
Generalnie w moim procesorze mam 8 bitowe rejestry uniwersalne (jest ich 4).
Gdybym dostał np 32 bitowe dane mógłbym potraktować je jako 4 * 8 bitów ale wykonać operacje jako 32 bitowe ? Tak jak na rysunku:

f9a4my8l57m5.png

Jeśli by sie zgadzało to:
1) Podstawowa długość słowa mikroprocesora to 8 bitów i długość słowa na magistrali danych 8 bitów więc jak mam upchać tam 32 bity ?
2) Jeśli dajmy na to wynik operacji d+h przekroczy 8 bitów to jedynka przejdzie mi na następne 8 bitów zmieniając całkowicie wynik dodawania c+g

dodanie obrazka do załączników i treści posta - @furious programming

edytowany 1x, ostatnio: furious programming, 2016-12-13 18:26
Wstawiaj obrazki do załączników postów, nie na zewnętrzne hostingi; - furious programming 2015-01-09 23:20

Pozostało 580 znaków

2015-01-09 16:44
0

Do działania z obrazka potrzebujesz specjalnych 32-bitowych rejestrów, w każdym umieszczasz cztery 8-bitowe liczby i jedna instrukcja dodawania wykonuje cztery niezależne dodawania na odpowiednich bajtach.

Nie może być to zwykłe 32-bitowe dodawanie, bo wynik będzie zły.

edytowany 1x, ostatnio: Azarien, 2015-01-09 16:45

Pozostało 580 znaków

2015-01-09 20:30
0

Jeśli d+h przekroczy 255 to wynik zostanie albo zmniejszony o 256 albo wysycony do wartości maksymalnej czyli 255.

http://tommesani.com/index.ph[...]2-simd/37-mmx-arithmetic.html

Wraparound to tzw przekręcanie się licznika, a saturation to wysycanie (czyli zamiana wartości mniejszych niż minimalna na minimalną i większych niż maksymalna na maksymalną).


"Programs must be written for people to read, and only incidentally for machines to execute." - Abelson & Sussman, SICP, preface to the first edition
"Ci, co najbardziej pragną planować życie społeczne, gdyby im na to pozwolić, staliby się w najwyższym stopniu niebezpieczni i nietolerancyjni wobec planów życiowych innych ludzi. Często, tchnącego dobrocią i oddanego jakiejś sprawie idealistę, dzieli od fanatyka tylko mały krok."
Demokracja jest fajna, dopóki wygrywa twoja ulubiona partia.

Pozostało 580 znaków

Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0