-
Data: 2014-04-04 10:48:27
Temat: Re: PIC vs AVR
Od: Sylwester Łazar <i...@a...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]> Proszę o jakieś opinie.
>
> Pozdrawiam
> jp
Wydaje mi się, że praca z kompilatorem (C czy czymkolwiek w przyszości, co
też nie będzie spójne),
jest jak praca z drugim programistą.
Toż przecież kompilator też napisał człowiek.
Wygląda mi na to, że decydując się na C, zgadzasz się jak gdyby na pracę w
grupie.
I naturalnym będzie, że są różnice w wizji - jak to ma działać.
Inny kompilator - inny programista.
Zmieniając kompilator, to tak jakbyś zmieniał współpracownika.
Nowy może być lepszy, ale te "docieranie".
Dlatego bardzo rozsądne wydaje mi się to co robi MAREK:
"nie zmieniam kompilatora używanego latami,
przetestowanego na wszelkie możliwe sposoby i działającego prawidłowo
(C18} nagle na inny (XC8)"
Zna jego wady i zalety i pracuje mu się z nim skutecznie.
Jeśli chodzi o Microchip, to sytuacja jest wydaje mi się jeszcze gorsza.
np. z ostatnich dni.
Chciałem sobie zrobić sortowanie napięć.
Bąbelkowe - najprostrze, ale nie wypada, bo niemal prawie najgorsze z
możliwych.
No to quic sort.
Fajnie. Biorę C32 i jest piękna funkcja qsort() w bibliotece. Ale ja mam
18F.
W C18 już jej nie ma.
Lepiej jednak mi pasuje metoda zliczania.
Myślę sobie - co za problem - kopiuję z Wikipedii i mam.
Jednak coś mnie zatrzymało. Jak to będzie działać na 8-bitowym z rekordami
danych, bo oprócz wartości napięć są i ich adresy?
Musi być to strasznie czasochłonne i nadmiarowe zrobić na 8-bitówce.
Więc zrobiłem w asm. Zaraz uruchomię.
Nie zdecydowałem się w pierwszej kolejności w C i podpatrzeć, tylko
sprawdzić od razu w ASM nie sugerując się.
Jak to zrobię zapuszczę w C18 poniższy fragment z Wikipedii i porównam.
W międzyczasie, jakby mi ktoś powiedział, czy widzi jakieś spowolnienia w
tym kodzie, to byłbym wdzięczny.
S.
# variables:
# input -- the array of items to be sorted; key(x) returns the key for
item x
# n -- the length of the input
# k -- a number such that all keys are in the range 0..k-1
# count -- an array of numbers, with indexes 0..k-1, initially all zero
# output -- an array of items, with indexes 0..n-1
# x -- an individual input item, used within the algorithm
# total, oldCount, i -- numbers used within the algorithm
# calculate the histogram of key frequencies:
for x in input:
count[key(x)] += 1
# calculate the starting index for each key:
total = 0
for i in range(k): # i = 0, 1, ... k-1
oldCount = count[i]
count[i] = total
total += oldCount
# copy to output array, preserving order of inputs with equal keys:
for x in input:
output[count[key(x)]] = x
count[key(x)] += 1
return output
Następne wpisy z tego wątku
- 04.04.14 10:52 Marek
- 04.04.14 11:10 Sylwester Łazar
- 04.04.14 11:22 Michał Lankosz
- 04.04.14 11:46 jacek pozniak
- 04.04.14 11:58 tusk, donald tusk
- 04.04.14 12:01 Adam Wysocki
- 04.04.14 12:40 Marek
- 04.04.14 12:41 Marek
- 04.04.14 12:47 Sylwester Łazar
- 04.04.14 12:49 Marek
- 04.04.14 13:47 jacek pozniak
- 04.04.14 14:07 Sylwester Łazar
- 04.04.14 14:09 jacek pozniak
- 04.04.14 14:19 jacek pozniak
- 04.04.14 15:13 jacek pozniak
Najnowsze wątki z tej grupy
- Pęczniejące LiPo
- wyłącznik ścienny
- "Wybitna" inteligencja AI
- test stereo
- Bluetooth stereo
- W USA budują pierwszą komercyjną elektrownię fuzji jądrowej
- Weryfikacja myjki ultradźwiękowej
- zasieg radaru
- Zmywarka Bosch SRV55T43EU - awaria
- Kod zniżkowy w TME do 26.09.2025
- SFP, 10G, simplex sc/apc
- [słabe wiatry powodują - przyp. JMJ] Energetyczny paraliż w Niemczech
- NxtPaper
- Programiści nie przestają zadziwiać świat
- Długi kabel zasilający a na końcu procek
Najnowsze wątki
- 2025-09-26 Zimowy płyn do spryskiwania szyb
- 2025-09-25 Ekstradycja Ukraińca za wysadzenie Nord Stream
- 2025-09-25 Mentzen: Nie macie pojęcia o kryptowalutach, a chcecie decydować o ich przyszłości!
- 2025-09-25 Wycofują 3G. Nie będzie nawet internetu.
- 2025-09-25 Pęczniejące LiPo
- 2025-09-25 wyłącznik ścienny
- 2025-09-25 Cenckiewicz ma czy nie ma poświadczenia bezpieczeństwa? [SKW cofnęła, WSA uchylił cofnięcie, NSA się ma wypowiedzieć]
- 2025-09-25 iKO
- 2025-09-25 jęczy wspomaganie
- 2025-09-24 "Wybitna" inteligencja AI
- 2025-09-24 test stereo
- 2025-09-24 Bluetooth stereo
- 2025-09-24 Rzeszów => International Freight Forwarder <=
- 2025-09-24 Gdańsk => Delphi Programmer <=
- 2025-09-24 Warszawa => BI Developer / Analityk BI <=