-
41. Data: 2014-02-25 02:37:32
Temat: Re: Mlody Technik
Od: A.L. <a...@a...com>
On Tue, 25 Feb 2014 01:40:34 +0100, Sylwester Łazar <i...@a...pl>
wrote:
>> Ja. Nawet pisywalem.
>A mozna poprosic o sampla :-)
>S.
To bylo 40 lat temu... Nie mam. Nawet nie pamietam dokladnie o czym
pisalem...Cos o radiach transystorowych i lampowych... Takie
porownanie technologii
Z samplow to mam moje najwieksze dzielo literackie: ksiazke
Programowanie Milkrokomputerow w Jezyku Basic. Wydana pzrez Sigme.
Taka czerwona okladka. Wczesne lata 80
To byl ozaraz jak "wybuchly" komputery personalne. Rok 1982 czy 3. Nic
nie bylo po polsku. To byla pierwsza ksiazka
ksero manuskryptu na tak zwanym "perskim" do ktorego byl pzreciek,
kosztowalo wiecej niz ja dostalem jako honorarium. Ludzie sie
wywiedziel ize ksiazka ma byc "rzucona" do ksiegarni w poneidzialek. W
sobote zaczely sie ustawiac kolejki.
Pierwszy naklad - cos 20 tysiecy, o ile pamietam, rozszedl sie w pare
godzin. Potem byly dodruki, w sumei cos ze 200 tysiecy
Ale forsy na tym nei zrobilem.. .Honoraria byly g...ne. Tyle co mi
zostalo to to ze przyczynilem sie do "rewolucji komputerowej.
Niestety, "sampla" nei podesle, bo mam tylko jeden papierowy
egzemplarz :)
Mzoe gdzies jest w sieci
A.L.
P.S. Drugei dzielo literackie z duzym sukcesem to Automatyka w
Pytaniach i Odpowiedziach. Miala niezykle powodzenie bo ludzie tego
sie wkuwali do egzaminow magisterskich, a na niektorych
prowincjonalnych uczelniach byla podrecznikiem.
Do sciagniecia z sieci
-
42. Data: 2014-02-25 06:58:55
Temat: Re: Mlody Technik
Od: Marek <f...@f...com>
On Mon, 24 Feb 2014 19:37:32 -0600, A.L. <a...@a...com> wrote:
> Do sciagniecia z sieci
Kiedyś słyszałem taką dyskusję między profesorami (nie pamiętam z
jakiej dziedziny) na temat piractwa ich publikacji i skryptów, jeden
midi do drugiego:
- Jakby moich książek nie byłoby na chomiku to znaczyłoby, że są nic
nie warte.
:-)
chomik - taki popularny serwis do wymiany plików.
--
Marek
-
43. Data: 2014-02-25 07:35:20
Temat: Re: Mlody Technik
Od: "J.F." <j...@p...onet.pl>
Dnia Mon, 24 Feb 2014 19:21:39 -0600, A.L. napisał(a):
> Programista niewiele tu moze na poziomie asm zdzialac, a reczne
> "poprawki" moga miec katastroficzny skutek. Na przyklad, jednym z
> ograniczen NIEKTORYCH wariantow architektury MIPS jest ze jezeli
> instrukcja laduje cos z pamieci do rejestru, to rejestr ten nie moze
> byc wykorystany w nastepnej instrukcji.
Ale to nadal programista moze program cyzelowac i miec lepsze wyniki
niz kompilator.
Tylko przyjemne to nie jest, i jak piszesz - na niektorych program
chodzi, na innych nie chodzi, na innych chodzi gorzej - i nie
wystarczy przestawic opcji w kompilatorze.
Gdzie te MIPS sa uzywane ? Czytam ze w Playstation ... i niby szeroko,
tylko ze konkretow nie ma. Na jakim procesorze/komputerze robicie
cwiczenia ?
> Dla przykladu - problem z dzisiejszego egzaminu :)
> Problem 7 - 15 points. Given is the following fragment of a program
> executed by a pipeline
> add $s0, $s0, $t1
> lw $t2, 20($t1)
> and $t4, $t2, $t5
> or $t8, $t2, $t6
> add $t9, $t4, $t2
> slt $t1, $t6, $t7
> Answer the following questions:
> (1) Is there data hazard in the above code?
> (2) If there is data hazard, show how it can be resolved by:
> (a) Stalling the pipeline (inserting bubbles)
> (b) Inserting nop instructions
> (c) Rearranging instructions
> Consider 2 cases: with forwarding and without forwarding
Nie powinno byc to zalatwione sprzetowo - procesor sam wstawia nop
zanim dane nie beda osiagalne ? Oczywiscie nadal kompilator moze
optymalizowac.
J.
-
44. Data: 2014-02-25 09:05:28
Temat: Re: Mlody Technik
Od: sundayman <s...@p...onet.pl>
> Z samplow to mam moje najwieksze dzielo literackie: ksiazke
> Programowanie Milkrokomputerow w Jezyku Basic. Wydana pzrez Sigme.
> Taka czerwona okladka. Wczesne lata 80
pewnie to ?
http://allegro.pl/frelek-mikrokomputer-programowanie
-w-jezyku-basic-i4000600568.html
No jak raz nie miałem niestety, ale pamiętam okładkę skądś - to był
czas, że literatury było jak na lekarstwo :)
Ale mam właśnie w ręku inną z tej serii;
http://allegro.pl/rydzewski-sacha-mikrokomputer-elem
enty-budowa-dzia-i3936802214.html
Niby staroć, ale nie wyrzucam, bo czasem trzeba sobie jakąś rzeczy
przypomnieć :)
-
45. Data: 2014-02-25 09:07:02
Temat: Re: Mlody Technik
Od: JDX <j...@o...pl>
On 2014-02-25 07:35, J.F. wrote:
[...]
> Gdzie te MIPS sa uzywane ? Czytam ze w Playstation ... i niby szeroko,
> tylko ze konkretow nie ma. Na jakim procesorze/komputerze robicie
> cwiczenia ?
Spora część (większość?) domowych ruterków jest zbudowana na SoC-ach
Broadcoma który ma w środku MIPS-a.
-
46. Data: 2014-02-25 09:30:09
Temat: Re: Mlody Technik
Od: Sylwester Łazar <i...@a...pl>
> Tylko przyjemne to nie jest, i jak piszesz - na niektorych program
> chodzi, na innych nie chodzi, na innych chodzi gorzej - i nie
> wystarczy przestawic opcji w kompilatorze.
Ludzie sudoku godzinami rozwiązują, a Ty piszesz, że to nieprzyjemne :-)
> > Dla przykladu - problem z dzisiejszego egzaminu :)
> > Problem 7 - 15 points. Given is the following fragment of a program
> > executed by a pipeline
> > add $s0, $s0, $t1
> > lw $t2, 20($t1)
> > and $t4, $t2, $t5
> > or $t8, $t2, $t6
> > add $t9, $t4, $t2
> > slt $t1, $t6, $t7
> > Answer the following questions:
> > (1) Is there data hazard in the above code?
> > (2) If there is data hazard, show how it can be resolved by:
> > (a) Stalling the pipeline (inserting bubbles)
> > (b) Inserting nop instructions
> > (c) Rearranging instructions
> > Consider 2 cases: with forwarding and without forwarding
> Nie powinno byc to zalatwione sprzetowo - procesor sam wstawia nop
> zanim dane nie beda osiagalne ? Oczywiscie nadal kompilator moze
> optymalizowac.
Jeżeli kompilator miałby wstawiać nopy, to jest to najgorsze rozwiązanie,
ale za to bardzo proste.
W powyższym kodzie, jak wstawisz po każdej instrukcji NOP bez żadnej
analizy,
to możesz już się kłócić z wykładowcą, że przecież rozwiązałeś problem.
Twoim koronnym argumentem będzie, że przecież Ubuntu ma tyle megabajtów,
a Ty tylko 6 nopów dałeś!
Ślepy indianin już zauważy, że instrukcja wykonywana na końcu:
slt $t1, $t6, $t7
nie korzysta z rejestrów, które są zmieniane w poprzednich pięciu.
Możesz ją przesunąć i masz NOPA :-)
S.
-
47. Data: 2014-02-25 09:36:42
Temat: Re: Mlody Technik
Od: Sylwester Łazar <i...@a...pl>
> To jest prawda. Dobrze sobie zdawac sprawe co kompilator robi z
> programem... Ksiazka H&P w sporej czesci traktuje wlasnie o tym
> problemie
>
> >Był tam gdzieś fragment też o tym, że dobrym zwyczajem jest zaglądnąć do
> >kodu po kompilacji i go poprawić.
>
> Ale to akurat nie ma sensu. Mialo sens 30 lat temu, w dobie Z80. MIPS
> i wspoczesne procesory oparte sa o "pipeline architecture". Kompilator
> dokonuje znaczacej optymalizacji kodu tak aby jak najlepiej
> wykorztstac owa "pipeline". Sprowadza sie to - miedzy innymi, ale nie
> tylko - do zmiany kolejnosci wykonywanai instrukcji i przydzielania
> rejestrow co wymaga globalnej analizy programu.
Chyba nagiąłem nieco słowa autora :-)
Wklejam więc w oryginale:
--------------------------
10.2 Code Development for Embedded Processors
An embedded system usually lacks secondary storage (e.g. a hard disk).
Typically all of
the code is stored in Read Only Memory (ROM). Usually, most of the code
written for
embedded processors is first written in a high-level languages such as C.
Programmers
who can visualize how the high-level code will be translated into assembly
language code
will most likely develop the "best" code. Then programmers who have an
intimate
understanding of the assembly language for the target processor, will
analyze the code
generated by the compiler looking for ways to make further optimizations.
In other
words, they look for ways to speed up the execution, or to reduce the amount
of code that
has to be stored in ROM. Typically, for real-time applications, the code
must be finetuned,
to meet the system's performance requirements. Any programmer with the
skills to
accomplish this kind of optimization will be highly sought after.
The kernel of the
operating system deals with responding to interrupts and scheduling tasks.
This code as
well as the I/O drivers will typically be the first code to be scrutinized.
--------------------------
Dalej jest też trochę o 68000 i programowaniu w asm na inne:
The Motorola 68000 and its derivatives currently have the largest share of
the embedded
market. While the MIPS processor is classified as a RISC processor, the
Motorola 68000
is classified as a Complex Instruction Set Computer (CISC). With a solid
understanding
of the MIPS processor and experience in developing assembly language code
for the
MIPS processor, it is a relatively easy task to make the transition to
assembly language
for other processors.
S.
-
48. Data: 2014-02-25 09:50:16
Temat: Re: Mlody Technik
Od: Sylwester Łazar <i...@a...pl>
> To bylo 40 lat temu... Nie mam. Nawet nie pamietam dokladnie o czym
> pisalem...Cos o radiach transystorowych i lampowych... Takie
> porownanie technologii
>
> Z samplow to mam moje najwieksze dzielo literackie: ksiazke
> Programowanie Milkrokomputerow w Jezyku Basic. Wydana pzrez Sigme.
> Taka czerwona okladka. Wczesne lata 80
> Pierwszy naklad - cos 20 tysiecy, o ile pamietam, rozszedl sie w pare
> godzin. Potem byly dodruki, w sumei cos ze 200 tysiecy
>
> Ale forsy na tym nei zrobilem.. .Honoraria byly g...ne. Tyle co mi
> zostalo to to ze przyczynilem sie do "rewolucji komputerowej.
> P.S. Drugei dzielo literackie z duzym sukcesem to Automatyka w
> Pytaniach i Odpowiedziach. Miala niezykle powodzenie bo ludzie tego
> sie wkuwali do egzaminow magisterskich, a na niektorych
> prowincjonalnych uczelniach byla podrecznikiem.
W takim razie Panie Andrzeju, skladam gorace podziekowania za wlozona prace.
Bardzo dziekuje w imieniu tych, co sie uczyli na Pana materialach i
korzystali
z ogromnej wiedzy.
No prosze, jakich wybitnych naukowców mozna znalezc na p.m.e. !
Pozdrawiam,
S.
-
49. Data: 2014-02-25 15:22:13
Temat: Re: Mlody Technik
Od: A.L. <a...@a...com>
On Tue, 25 Feb 2014 09:30:09 +0100, Sylwester Łazar <i...@a...pl>
wrote:
>Jeżeli kompilator miałby wstawiać nopy, to jest to najgorsze rozwiązanie,
>ale za to bardzo proste.
>W powyższym kodzie, jak wstawisz po każdej instrukcji NOP bez żadnej
>analizy,
>to możesz już się kłócić z wykładowcą, że przecież rozwiązałeś problem.
Nie moze sie klocic, bo pytaniw bylo sformulowana jak sformulowane.
>Ślepy indianin już zauważy, że instrukcja wykonywana na końcu:
>slt $t1, $t6, $t7
>nie korzysta z rejestrów, które są zmieniane w poprzednich pięciu.
>Możesz ją przesunąć i masz NOPA :-)
>S.
>
Tylko polowa studentow t ozauwazyla.
No dobra, ale teraz miej 10K takich instrukcji i zrob optymalizacje
ercznie
A.L.
-
50. Data: 2014-02-25 15:24:35
Temat: Re: Mlody Technik
Od: A.L. <a...@a...com>
>market. While the MIPS processor is classified as a RISC processor, the
>Motorola 68000
>is classified as a Complex Instruction Set Computer (CISC). With a solid
>understanding
>of the MIPS processor and experience in developing assembly language code
>for the
>MIPS processor, it is a relatively easy task to make the transition to
>assembly language
>for other processors.
>S.
Z tym sie zgadzam. Z poprzednim - niekoniecznie
A.L.