🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.asm
16 messages
16 total messages Started by PioM Mon, 18 Dec 2006 23:00
x86 i risc
#893
Author: PioM
Date: Mon, 18 Dec 2006 23:00
20 lines
1637 bytes
Witam

Teoretycznie do dzialania komputerow wystarczyly by rozkazy podobne do RISC:

1: add,div,pow,sin,sqrt,mul,sub,cmp
2: shr,shl, ror,rol,not,and,or,xor
3: jnz,jz,jb,ja,jc,jmp,call,ret
4: mov,in,out
prefixy: 8 bits, 16 bits,(24 bits,)32 bits,64 bits,128 bits, 256 
bits,[absolute address],[relative address],relative address,absolute 
address,immediate (zmodifikowany relative 0 offset z dodatkowym 
przesunieciem),

prefix1,prefix2,instrukcja,sufix1,sufix2

Rejestry nie sa konieczne (potrzebne). Mozna rezerwowac pamiec np. 
00000000-00000nnn dla "rejestrow".

x86 jest chaotyczny i nieuporzadkowany. Moze ma jeszcze jakas ukryta 
"warstwe" rozkazow? 
Re: x86 i risc
#894
Author: PioM
Date: Mon, 18 Dec 2006 23:09
21 lines
1752 bytes
> Teoretycznie do dzialania komputerow wystarczyly by rozkazy podobne do 
> RISC:
>
> 1: add,div,pow,sin,sqrt,mul,sub,cmp
> 2: shr,shl, ror,rol,not,and,or,xor
> 3: jnz,jz,jb,ja,jc,jmp,call,ret
> 4: mov,in,out
> prefixy: 8 bits, 16 bits,(24 bits,)32 bits,64 bits,128 bits, 256 
> bits,[absolute address],[relative address],relative address,absolute 
> address,immediate (zmodifikowany relative 0 offset z dodatkowym 
> przesunieciem),
>
> prefix1,prefix2,instrukcja,sufix1,sufix2

prefix1,prefix2,...,prefixn,instrukcja,sufix1,sufix2

> Rejestry nie sa konieczne (potrzebne). Mozna rezerwowac pamiec np. 
> 00000000-00000nnn dla "rejestrow".
>
> x86 jest chaotyczny i nieuporzadkowany. Moze ma jeszcze jakas ukryta 
> "warstwe" rozkazow?
Re: x86 i risc
#900
Author: Bernard
Date: Tue, 19 Dec 2006 09:25
50 lines
2352 bytes
PioM wrote:
> Witam
> 
> Teoretycznie do dzialania komputerow wystarczyly by rozkazy podobne do RISC:
> 
> 1: add,div,pow,sin,sqrt,mul,sub,cmp

Praktycznie pow, sin i sqrt są zbędne, a teoretycznie komputer może mieć 
tylko jeden rozkaz, np odejmij i skocz jeśli mniejsze od zera.

> 2: shr,shl, ror,rol,not,and,or,xor

Przesada. Można żyć bez ror/rol.

> 3: jnz,jz,jb,ja,jc,jmp,call,ret

Też się można obyń bez części tych instrukcji.

> 4: mov,in,out

Całkowicie zbędne ;)

> prefixy: 8 bits, 16 bits,(24 bits,)32 bits,64 bits,128 bits, 256 

A po co komu jakieś prefiksy?

> bits,[absolute address],[relative address],relative address,absolute 
> address,immediate (zmodifikowany relative 0 offset z dodatkowym 
> przesunieciem),

Adresowanie absolutne jest zbędne.

> prefix1,prefix2,instrukcja,sufix1,sufix2

Wystarczy sama instrukcja.

> Rejestry nie sa konieczne (potrzebne). Mozna rezerwowac pamiec np. 
> 00000000-00000nnn dla "rejestrow".

Teoretycznie tak. Praktycznie rejestry są niezbędne dla uzyskania 
sensownej wydajności.

> x86 jest chaotyczny i nieuporzadkowany. Moze ma jeszcze jakas ukryta 
> "warstwe" rozkazow? 

Jest chaotyczny, ale mniej, niż Ci się wydaje. Oczywiście, że 
współczesne x86 mają "ukrytą" warstwę RISC i od dawna prowadzi się 
dyskusje, czy należy tę warstwę "odkryć". Częściowo zrobiono to w 
procesorach VIA, taki mechanizma mają obecnie procesory AMD, ale jest on 
utajniony i nie używany do celów innych niż testy wewnątrz firmy.
Re: x86 i risc
#904
Author: Wiktor S.
Date: Tue, 19 Dec 2006 10:18
42 lines
2390 bytes
> Teoretycznie do dzialania komputerow wystarczyly by rozkazy podobne
> do RISC:

Teoretycznie to każdy układ można zbudować na samych NANDach. Albo samych 
NORach. Można żyć w jaskini lub szałasie, zamiast internetu dawać znaki 
dymne. Z polowaniem na mamuty może być już problem.

> 1: add,div,pow,sin,sqrt,mul,sub,cmp
> 2: shr,shl, ror,rol,not,and,or,xor
> 3: jnz,jz,jb,ja,jc,jmp,call,ret
> 4: mov,in,out
> prefixy: 8 bits, 16 bits,(24 bits,)32 bits,64 bits,128 bits, 256
> bits,[absolute address],[relative address],relative address,absolute
> address,immediate (zmodifikowany relative 0 offset z dodatkowym
> przesunieciem),
>
> prefix1,prefix2,instrukcja,sufix1,sufix2
>
> Rejestry nie sa konieczne (potrzebne). Mozna rezerwowac pamiec np.
> 00000000-00000nnn dla "rejestrow".

Twoją listę MOŻNA BY ukrócić do jednej trzeciej.

> x86 jest chaotyczny i nieuporzadkowany.

Zgodność wstecz. Co jakiś czas pojawia się "nowa, lepsza koncepcja" typu 
tryb chroniony, 32 bity, MMX, SSE, 64 bity - jednak za każdym razem można 
tylko coś DODAĆ, a niczego UJĄĆ.

Po to, by najnowsze Core Sruo było zgodne z układem Intel 8086 z 1980 roku.

> Moze ma jeszcze jakas ukryta "warstwe" rozkazow?

Ma. Ale jest ona inna u Intela i inna u AMD, w zasadzie inna w każdym nowym 
jądrze. Stanowi tajemnicę producenta.

Pierwszym procesorem, który _wewnętrznie_ był risc-iem z warstwą "emulacji" 
x86 był Athlon.


-- 
Azarien
Re: x86 i risc
#905
Author: Bernard
Date: Tue, 19 Dec 2006 11:40
16 lines
1447 bytes
Wiktor S. wrote:
> Ma. Ale jest ona inna u Intela i inna u AMD, w zasadzie inna w każdym 
> nowym jądrze. Stanowi tajemnicę producenta.
> 
> Pierwszym procesorem, który _wewnętrznie_ był risc-iem z warstwą 
> "emulacji" x86 był Athlon.

NexGen Nx586 - 1994
AMD K6 - 1997
IDT C6 - 1997? chyba

Wszystkie miały możliwość programowania w kodzie RISC, oczywiście 
nieudokumentowaną i tajną, ale wiadmowo było, że producenci z tego 
korzystają. W Nx586 było ciekawiej - zamiast kodu RISC był podzbiór 
instrukcji x86, w którym zostały przez producenta zaprogramowane co 
bardziej złożone instrukcje x86.
Re: x86 i risc
#906
Author: Wiktor S.
Date: Tue, 19 Dec 2006 23:09
14 lines
1287 bytes
>> Pierwszym procesorem, który _wewnętrznie_ był risc-iem z warstwą
>> "emulacji" x86 był Athlon.

> NexGen Nx586 - 1994
> AMD K6 - 1997
> IDT C6 - 1997? chyba

Hmm...
Dlaczego więc dopiero przy pierwszym Athlonie zaczęło się ach i och nad 
takimi "ficzerami"? :-)


-- 
Azarien
Re: x86 i risc
#907
Author: Bernard
Date: Wed, 20 Dec 2006 10:17
17 lines
1557 bytes
Wiktor S. wrote:
>>> Pierwszym procesorem, który _wewnętrznie_ był risc-iem z warstwą
>>> "emulacji" x86 był Athlon.
> 
>> NexGen Nx586 - 1994
>> AMD K6 - 1997
>> IDT C6 - 1997? chyba
> 
> Hmm...
> Dlaczego więc dopiero przy pierwszym Athlonie zaczęło się ach i och nad 
> takimi "ficzerami"? :-)

Nie jestem socjologiem, tylko informatykiem, więc nie do mnie to pytanie 
(o achy i ochy). Pierwszym sprzedawanym "RISCowym" x86 był NexGen, 
drugim PentiumPro, potem K5, K6 itd. Ani PentiumPro z rodzinką ani K5 
nie miały (chyba) możliwości programowania w natywnym kodzie RISC, 
pozostałe procesory taką możliwość miały, w różnym stopniu utajnioną.
Re: x86 i risc
#908
Author: Jakub Bogusz
Date: Wed, 20 Dec 2006 16:15
25 lines
1943 bytes
W śro, 20 gru 2006 o 10:17 GMT, Bernard napisał(a):
> Wiktor S. wrote:
>>>> Pierwszym procesorem, który _wewnętrznie_ był risc-iem z warstwą
>>>> "emulacji" x86 był Athlon.
>> 
>>> NexGen Nx586 - 1994
>>> AMD K6 - 1997
>>> IDT C6 - 1997? chyba
>> 
>> Hmm...
>> Dlaczego więc dopiero przy pierwszym Athlonie zaczęło się ach i och nad 
>> takimi "ficzerami"? :-)
>
> Nie jestem socjologiem, tylko informatykiem, więc nie do mnie to pytanie 
> (o achy i ochy). Pierwszym sprzedawanym "RISCowym" x86 był NexGen, 
> drugim PentiumPro, potem K5, K6 itd. Ani PentiumPro z rodzinką ani K5 
> nie miały (chyba) możliwości programowania w natywnym kodzie RISC, 
> pozostałe procesory taką możliwość miały, w różnym stopniu utajnioną.

Pentium Pro (i nowsze) mają możliwość wczytania mikrokodu (Intel w ten
sposób udostępnia poprawki błędów), a to chyba to.


-- 
Jakub Bogusz  |  http://qboosh.pl/
Re: x86 i risc
#901
Author: PioM
Date: Thu, 21 Dec 2006 15:07
66 lines
3079 bytes
Użytkownik "Bernard" <bernard@earth.net> napisał w wiadomości 
news:em8b0e$26t$1@achot.icm.edu.pl...
> PioM wrote:
>> Witam
>>
>> Teoretycznie do dzialania komputerow wystarczyly by rozkazy podobne do 
>> RISC:
>>
>> 1: add,div,pow,sin,sqrt,mul,sub,cmp
>
> Praktycznie pow, sin i sqrt są zbędne, a teoretycznie komputer może mieć 
> tylko jeden rozkaz, np odejmij i skocz jeśli mniejsze od zera.

Pow moze byc zamiast sqrt. Sin stablicowac mozna,

>> 2: shr,shl, ror,rol,not,and,or,xor
>
> Przesada. Można żyć bez ror/rol.

Moga sie przydac.

>> 3: jnz,jz,jb,ja,jc,jmp,call,ret
>
> Też się można obyń bez części tych instrukcji.
>
>> 4: mov,in,out
> Całkowicie zbędne ;)

blad ;))

>> prefixy: 8 bits, 16 bits,(24 bits,)32 bits,64 bits,128 bits, 256
>
> A po co komu jakieś prefiksy?

Do obrobki tekstu wystarcza 16 bitowe, do grafiki 2D 32 i 64 bitowe.

>> bits,[absolute address],[relative address],relative address,absolute 
>> address,immediate (zmodifikowany relative 0 offset z dodatkowym 
>> przesunieciem),
>
> Adresowanie absolutne jest zbędne.
>
>> prefix1,prefix2,instrukcja,sufix1,sufix2
>
> Wystarczy sama instrukcja.

Ekonomia to przeklestwo. Po co nam male kody?.

>> Rejestry nie sa konieczne (potrzebne). Mozna rezerwowac pamiec np. 
>> 00000000-00000nnn dla "rejestrow".
> Teoretycznie tak. Praktycznie rejestry są niezbędne dla uzyskania 
> sensownej wydajności.

Adres 0 moze byc w cache, wiec powinno byc wydajne.

>> x86 jest chaotyczny i nieuporzadkowany. Moze ma jeszcze jakas ukryta 
>> "warstwe" rozkazow?
>
> Jest chaotyczny, ale mniej, niż Ci się wydaje. Oczywiście, że współczesne 
> x86 mają "ukrytą" warstwę RISC i od dawna prowadzi się dyskusje, czy 
> należy tę warstwę "odkryć". Częściowo zrobiono to w procesorach VIA, taki 
> mechanizma mają obecnie procesory AMD, ale jest on utajniony i nie używany 
> do celów innych niż testy wewnątrz firmy.

Trzeba projektowac wlasne procerory, zeby miec rowne szanse.
Re: x86 i risc
#902
Author: Wiktor S.
Date: Thu, 21 Dec 2006 22:14
11 lines
1163 bytes
>>> prefix1,prefix2,instrukcja,sufix1,sufix2
>> 
>> Wystarczy sama instrukcja.
> 
> Ekonomia to przeklestwo. Po co nam male kody?.

Po co nam ograniczanie do 10 instrukcji?


-- 
Azarien
Re: x86 i risc
#903
Author: PioM
Date: Sat, 23 Dec 2006 20:11
8 lines
1263 bytes
>> Ekonomia to przeklestwo. Po co nam male kody?.
> Po co nam ograniczanie do 10 instrukcji?

Latwiej pamietac i sprawniej mozna uzywac.
Ale to ma tez wady.

--
PioM
Re: x86 i risc
#895
Author: PioM
Date: Fri, 29 Dec 2006 22:25
21 lines
1683 bytes

1: add,sub,mul,div,sin,tg,asin,atg
2: shr,shl, ror,rol,not,and,or,xor
3: jnz,jz,jb,ja,jc,jmp,call,ret
4: mov,cmp,in,out
prefixy: 8 bits, 16 bits,(24 bits,)32 bits,64 bits,128 bits, 256
bits,[absolute address],[relative address],relative address,absolute
address,immediate (zmodifikowany relative 0 offset z dodatkowym
 przesunieciem), double

 prefix1,prefix2,instrukcja,sufix1,sufix2

 prefix1,prefix2,...,prefixn,instrukcja,sufix1,sufix2

 Rejestry nie sa konieczne (potrzebne). Mozna rezerwowac pamiec np.
 00000000-00000nnn dla "rejestrow".

Teraz wyglada perfekcyjnie.

tg jest podobny do wykresu sqrt,pow, wiec dalem mul i div.(x88?) 
Re: x86 i risc
#896
Author: Michal Schulz
Date: Sat, 30 Dec 2006 07:28
15 lines
1262 bytes
PioM wrote:

> 1: add,sub,mul,div,sin,tg,asin,atg
> 2: shr,shl, ror,rol,not,and,or,xor
> 3: jnz,jz,jb,ja,jc,jmp,call,ret
> 4: mov,cmp,in,out
[...]
> Teraz wyglada perfekcyjnie.

No i? Zaskoczysz nas teraz jakims ciekawym wnioskiem? Napiszesz petycje do
AMD albo Intela? Zaporojektujesz swoj procesor? A moze po prostu
przestaniesz robic z tej grupy prywatnego bloga? ;)

-- 
Michal Schulz
Re: x86 i risc
#897
Author: PioM
Date: Sat, 30 Dec 2006 10:03
20 lines
1766 bytes
 1: add,div,sqrt,pow,sin,tg,asin,atg
>> 2: shr,shl, ror,rol,not,and,or,xor
>> 3: jnz,jz,jb,ja,jc,jmp,call,ret
>> 4: mov,cmp,in,out

Koncze juz. Lepiej napisac petycje, choc pewnie na marne.

> No i? Zaskoczysz nas teraz jakims ciekawym wnioskiem? Napiszesz petycje do
> AMD albo Intela? Zaporojektujesz swoj procesor? A moze po prostu
> przestaniesz robic z tej grupy prywatnego bloga? ;)

Blog. Bez przesady... :)) Stwierdzilem, ze to moze byc wazne. Moze inni 
eksperci zweryfikuja to?

Intel opracowal standard, gdzie 0 jest na poczatku, w cyfrach 0 jest na 
koncu. W polowie liczb jest !0, dla rownowagi. Polowa jest koncem liczb 
dodatnich.

--
Piotr Marasz
Re: x86 i risc
#898
Author: Michal Schulz
Date: Sat, 30 Dec 2006 10:30
10 lines
1202 bytes
PioM wrote:

> Intel opracowal standard, gdzie 0 jest na poczatku, w cyfrach 0 jest na
> koncu. W polowie liczb jest !0, dla rownowagi. Polowa jest koncem liczb
> dodatnich.

Dociagnij ten tok myslowy do konca i napisz po polsku o co ci chodzi... :)

-- 
Michal Schulz
Re: x86 i risc
#899
Author: PioM
Date: Fri, 05 Jan 2007 15:58
13 lines
1517 bytes
> PioM wrote:
>
>> Intel opracowal standard, gdzie 0 jest na poczatku, w cyfrach 0 jest na
>> koncu. W polowie liczb jest !0, dla rownowagi. Polowa jest koncem liczb
>> dodatnich.
>
> Dociagnij ten tok myslowy do konca i napisz po polsku o co ci chodzi... :)

!0 to granica, moze X i pewnie ma zwiazek z 0.
Koncze ten watek....

> -- 
> Piotr Marasz 
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads