CLAD ciekawe pytania testowe część 1

Jeśli masz coś do powiedzenia w sprawie LabVIEW napisz. Tutaj są tematy, których nie można uściślić do innych działów.
Awatar użytkownika
jacus
Posty: 8
Rejestracja: 25 lip 2009 20:31
Lokalizacja: Szczecin
Kontakt:

CLAD ciekawe pytania testowe część 1

Post autor: jacus » 27 paź 2014 19:35

Witam,

Dawno dawno temu gdzieś w sieci znalazłem poniższe pytania testów na które ciężko jest mi samemu odpowiedzieć. Nie chodzi o o samą odpowiedź, ale spokojne wytłumaczenie każdej odpowiedzi z testu. Jeżeli znajdzie ktoś chwilę to proszę o odpowiedź. Poniżej zrzuty ekranu. Może być więcej niż jedna odpowiedź poprawna.
Załączniki
Clipboard40.jpg
Clipboard40.jpg (19.76 KiB) Przejrzano 7114 razy
Clipboard38.jpg
Clipboard27.jpg
Clipboard27.jpg (21.79 KiB) Przejrzano 7114 razy
Clipboard19.jpg
Clipboard19.jpg (24.41 KiB) Przejrzano 7114 razy
Ostatnio zmieniony 27 paź 2014 21:32 przez jacus, łącznie zmieniany 1 raz.

Daniel PCL
Posty: 20
Rejestracja: 03 kwie 2013 11:26
Wersja środowiska: LabVIEW 8.0

Re: CLAD ciekawe pytania testowe część 1

Post autor: Daniel PCL » 27 paź 2014 20:19

Haj

Odpowiedź na pytanie 19 - ( B )

Dlaczego ??

Przetwornik 12-bitowy dzieli zakres pomiarowy 0-10V na 2^12 poziomów, czyli na 4096 poziomów. Na każdy poziom przypada 0,002441 V (10V / 4096), czyli 2,44 mV.

Przetwornik 16-bitowy dzieli zakres pomiarowy 0-10V na 2^16 poziomów, czyli na 65536 poziomów. Na każdy poziom przypada 0,000153 V (10V / 65536), czyli 0,153 mV.

My chcemy wykryć zmianę o 2,1 mV, czyli przetwornik 12-bitowy może tej zmiany nie wykryć, ponieważ jest ona mniejsza od 2,44 mV (najmniejsza zmiana wartości, którą wykrywa).

Przetwornik 16-bitowy na pewno sobie z tym poradzi, ponieważ wykrywa nawet zmianę o 0,153 mV


Coś w ten deseń.

Z pozdrówkami
Daniel

SNT
Posty: 55
Rejestracja: 18 lip 2013 13:23
Wersja środowiska: LabVIEW 2013

CLAD ciekawe pytania testowe część 1

Post autor: SNT » 28 paź 2014 07:55

40 - B (nie jestem pewien)
38 - A
27 A

PiDi
Posty: 624
Rejestracja: 31 gru 2010 01:36
Wersja środowiska: LabVIEW 2017
Lokalizacja: Katowice
Has thanked: 3 times
Been thanked: 3 times

Re: CLAD ciekawe pytania testowe część 1

Post autor: PiDi » 28 paź 2014 14:16

40 - B
Dlaczego? Bo nie ma takiej opcji.
Dlaczego? Bo programista DAQ-A nie zaimplementował
Dlaczego? Bo nikt nie zapisał tego w projekcie
Dlaczego? Bo nie było tego w wymaganiach
Dlaczego? Bo do zaawansowanej generacji sygnałów używa się zwykłych bloczków DAQmx

38 - B
Operacje na całej tablicy są szybsze niż na poszczególnych jej elementach (stąd A jest szybsze od B). - to tutaj nieprawda, patrz dyskusja niżej
W C dodawanie jest zupełnie bezsensowne (kabel między dodawaniem a indykatorem jest typu DBL). Gdyby nie było Add, to C i A miałyby identyczne działanie.
Natomiast wchodząc w bardziej zaawansowane tematy, można by się zastanowić, czy kompilator sam sobie by sprytnie każdego tego przypadku nie zoptymalizował.

27 - A
Dlaczego? Bo tak.


Ed. Zmieniłem odpowiedź na 38.
Ostatnio zmieniony 30 paź 2014 13:33 przez PiDi, łącznie zmieniany 1 raz.
ObrazekObrazekObrazekObrazek

Awatar użytkownika
aaddaas
Posty: 182
Rejestracja: 26 cze 2013 20:42
Wersja środowiska: LabVIEW 2015

Re: CLAD ciekawe pytania testowe część 1

Post autor: aaddaas » 28 paź 2014 17:31

PiDi pisze: 38 - A
Operacje na całej tablicy są szybsze niż na poszczególnych jej elementach (stąd A jest szybsze od B). W C dodawanie jest zupełnie bezsensowne (kabel między dodawaniem a indykatorem jest typu DBL). Gdyby nie było Add, to C i A miałyby identyczne działanie.
Natomiast wchodząc w bardziej zaawansowane tematy, można by się zastanowić, czy kompilator sam sobie by sprytnie każdego tego przypadku nie zoptymalizował.
C odpada, ponieważ LabView poprzez coercion dot konwertuje do "szerszej" reprezentacji (by nie tracić części danych), więc wynik nie byłby single precision array.
Obrazek

PiDi
Posty: 624
Rejestracja: 31 gru 2010 01:36
Wersja środowiska: LabVIEW 2017
Lokalizacja: Katowice
Has thanked: 3 times
Been thanked: 3 times

Re: CLAD ciekawe pytania testowe część 1

Post autor: PiDi » 28 paź 2014 18:03

C nie odpada. Popatrz na reprezentację indykatora.
ObrazekObrazekObrazekObrazek

Awatar użytkownika
aaddaas
Posty: 182
Rejestracja: 26 cze 2013 20:42
Wersja środowiska: LabVIEW 2015

Re: CLAD ciekawe pytania testowe część 1

Post autor: aaddaas » 28 paź 2014 19:27

Fakt, nie zwróciłem uwagi. Nie mniej jednak takie dodawanie mogło by mieć sens, gdyby konwersja była do szerszego typu danych (pomijając indykator), o czym warto pamiętać na egzaminie;)
Obrazek

Awatar użytkownika
vugie
Posty: 383
Rejestracja: 17 lis 2006 00:00
Wersja środowiska: LabVIEW 2009
Lokalizacja: Warszawa

Re: CLAD ciekawe pytania testowe część 1

Post autor: vugie » 30 paź 2014 12:02

PiDi pisze:40 - B
38 - A
Operacje na całej tablicy są szybsze niż na poszczególnych jej elementach (stąd A jest szybsze od B). W C dodawanie jest zupełnie bezsensowne (kabel między dodawaniem a indykatorem jest typu DBL). Gdyby nie było Add, to C i A miałyby identyczne działanie.
Natomiast wchodząc w bardziej zaawansowane tematy, można by się zastanowić, czy kompilator sam sobie by sprytnie każdego tego przypadku nie zoptymalizował.
Aż benchmark zrobiłem - i wychodzi A (szybciej o jakieś 15%). To co piszesz o operacjach na całych tablicach jest prawdą, ale:
- zmienia się tutaj fizyczny rozmiar tablicy
- pętla już jest, więc robienie operacji w niej nie jest dodatkowym overheadem

Poza tym operacja na całej tablicy to też pętla, tyle że wewnętrznie kompilator potrafi wykryć że robisz ich ileś pod rząd i wrzuca to w jedną pętlę.

PiDi
Posty: 624
Rejestracja: 31 gru 2010 01:36
Wersja środowiska: LabVIEW 2017
Lokalizacja: Katowice
Has thanked: 3 times
Been thanked: 3 times

Re: CLAD ciekawe pytania testowe część 1

Post autor: PiDi » 30 paź 2014 13:31

Ok, masz rację, jak na to teraz spojrzałem, to to co napisałem wcześniej jest głupie L-) Zrobienie rzutowania po zbudowaniu tablicy powoduje zaalokowanie całej nowej tablicy nowego typu, co jest kosztowne.
ObrazekObrazekObrazekObrazek

Awatar użytkownika
Nowszy
NI Man
Posty: 501
Rejestracja: 30 maja 2008 08:33
Wersja środowiska: LabVIEW 2011
Lokalizacja: Katowice
Kontakt:

CLAD ciekawe pytania testowe część 1

Post autor: Nowszy » 31 paź 2014 11:34

jacus, możesz mi podesłać linka do miejsca, gdzie znalazłeś te pytania?
Pozdrawiam, Nowszy

Jamal79
Posty: 289
Rejestracja: 01 maja 2012 14:14
Wersja środowiska: LabVIEW 2012
Lokalizacja: Farum

CLAD ciekawe pytania testowe część 1

Post autor: Jamal79 » 06 lis 2014 08:46

Tak generalizujac,
Te pytania sa tendencyjne.

Np, pytanie nr: 27.
Poco to komu pamietac jak moze spojzec na pomoc i zobaczyc.

Pytanie nr: 19.
Rozumiem sens i slusznosc takich pytan, ale jestem zwolennikiem rozgraniczenia tych dziedzin. tzn, kwesti hardware and software. Laczenie tych dziedzin, zabija kreatywnosc. Jezeli chcemy wyniesc sie na wyzyny i doprowadzic do tego statusu, ze nasze programy beda mega wydajne i mega funkcjonalne musimy przekraczac wszelkie granice. A pomiar 0,1 mV jest przez wiekszosc ludzi malo prawdopodobny (Fluke multimeter: dokladnosc z zakresu 0,1-1000V to 0,1 % +1). Rozumiem ze chcac pracowac w NASA lub CERN bedziemy to wykozystywac, ale i tak wtedy najpier musimy miec doktorat z inzynierii...

ODPOWIEDZ