Goto page Previous 1, 2, 3
4CX250
Guest
Wed Feb 09, 2011 2:39 pm
Użytkownik "RoMan Mandziejewicz" <roman@pik-net.pl> napisał w wiadomości
news:1776912922.20110209134434@pik-net.pl...
Quote:
Hello 4CX250,
Wednesday, February 9, 2011, 11:50:49 AM, you wrote:
Nawet wiem, jak będziesz dyskutował z policjantem, jak Cię złapie na
przekroczeniu prędkości...
Nawet wiem jak byś się zachował gdybyś to ty był tym policjantem.
Widzę, że jesteś typowym userem z dowcipu o tym, ilu takich trzeba do
wkręcenia żarówki. Bicie piany, trolling i dyskusje NTG.
No widzisz... każdy ma jakieś zadanie do zrobienia na tym bożym świecie

))
Marek
Adam Dybkowski
Guest
Wed Feb 09, 2011 11:21 pm
W dniu 2011-02-09 10:33 4CX250 napisał(a):
Quote:
A co to jest? Kto zgadnie?
IF (a := b := c + d * e:= g/2) <= 10
A to w ogóle co za pokraka? FORTRAN?
Jak dotąd była tu mowa o C i BASCOMie.
--
Adam Dybkowski
http://dybkowski.net/
Uwaga: przed wysłaniem do mnie maila usuń cyfry z adresu.
Adam Dybkowski
Guest
Wed Feb 09, 2011 11:30 pm
W dniu 2011-02-09 08:31 Adam napisał(a):
Quote:
I tu pojawił się kolejny problem.... Wrzuciłem do procka coś takiego (z
mikrokonrolery.net):
Config Portb =&B11111111
Config Portd =&B11111100
Portb =&B11111111
Portd =&B11111111
Do
If Pind.0 = 0 Then
Portb.7 = 0
End If
If Pind.1 = 0 Then
Portb.7 = 1
End If
Loop
Heh, niezły przykład na to, że C równie dobrze się nadaje do pisania
tego typu programów jak BASCOM. Ten sam kod zapisany w C wygląda w
bardzo zbliżony sposób (jedynie trzeba myśleć czasem o nazwach rejestrów
procesora):
#include <avr/io.h>
#include <compat/deprecated.h>
DDRB = 0b11111111;
DDRD = 0b11111100;
PORTB = 0b11111111;
PORTD = 0b11111111;
for (;

{
if ((PIND & _BV(0)) == 0)
cbi(PORTB, 7);
if ((PIND & _BV(1)) == 0)
sbi(PORTB, 7);
}
Możliwe, że da się to samo wyrazić jeszcze bardziej przejrzyście ale mi
osobiście taki zapis odpowiada. :)
--
Adam Dybkowski
http://dybkowski.net/
Uwaga: przed wysłaniem do mnie maila usuń cyfry z adresu.
Grzegorz Niemirowski
Guest
Thu Feb 10, 2011 12:05 am
Adam Dybkowski <adybkows12@45wp.pl> napisał(a):
Quote:
DDRB = 0b11111111;
Głupie pytanie: taki zapis to jakaś konwencja AVR-GCC? AFAIK standard języka
C nie definiuje zapisu ciągów bitów i trzeba np. szesnastkowo.
--
Grzegorz Niemirowski
http://www.grzegorz.net/
OE PowerTool i Outlook Express:
http://www.grzegorz.net/oe/
Uptime: 4 days, 22 hours, 57 minutes and 12 seconds
Lelek@
Guest
Thu Feb 10, 2011 12:27 am
"Grzegorz Niemirowski" <gnthexfiles@poczta.onet.pl> wrote in message
news:iiv6k0$1tne$1@opal.icpnet.pl...
Quote:
Adam Dybkowski <adybkows12@45wp.pl> napisał(a):
DDRB = 0b11111111;
Głupie pytanie: taki zapis to jakaś konwencja AVR-GCC? AFAIK standard
języka C nie definiuje zapisu ciągów bitów i trzeba np. szesnastkowo.
AVRSTUDIO w assemblerze tak sie zapisuje
LDI r16,0b10101010
Tom
Guest
Thu Feb 10, 2011 3:58 am
On 10/02/2011 9:05 AM, Grzegorz Niemirowski wrote:
Quote:
Adam Dybkowski <adybkows12@45wp.pl> napisał(a):
DDRB = 0b11111111;
Głupie pytanie: taki zapis to jakaś konwencja AVR-GCC? AFAIK standard
języka C nie definiuje zapisu ciągów bitów i trzeba np. szesnastkowo.
TAk, nie wiem czy tylko AVRGCC czy GCC w ogole.
Tomek
Mirek
Guest
Thu Feb 10, 2011 2:43 pm
On czw, 10 lut 2011 00:05:44 in article news:<iiv6k0$1tne$1@opal.icpnet.pl>
Grzegorz Niemirowski wrote:
Quote:
Adam Dybkowski <adybkows12@45wp.pl> napisał(a):
DDRB = 0b11111111;
Głupie pytanie: taki zapis to jakaś konwencja AVR-GCC? AFAIK standard języka
C nie definiuje zapisu ciągów bitów i trzeba np. szesnastkowo.
gcc extensions
entroper
Guest
Thu Feb 10, 2011 5:22 pm
Użytkownik "Grzegorz Niemirowski" <gnthexfiles@poczta.onet.pl> napisał w
wiadomości news:iiv6k0$1tne$1@opal.icpnet.pl...
Quote:
DDRB = 0b11111111;
Głupie pytanie: taki zapis to jakaś konwencja AVR-GCC? AFAIK standard
języka
C nie definiuje zapisu ciągów bitów i trzeba np. szesnastkowo.
Nie tylko AVR-GCC, ale rzeczywiście jest to ponadstandardowe rozszerzenie
:)
e.
Waldemar Krzok
Guest
Thu Feb 10, 2011 6:59 pm
wrote:
Quote:
Użytkownik "janusz_kk1" <janusz_kk@o2.pl> napisał w wiadomości
news:op.vqmov0p11cvm6g@jk-laptop...
Juz Adamowi odpowiedziałem, gdzieś ostatnio w kodzie znalazłem taką
perełkę ale nie mogę jej znaleść, ten przykład co dałem był akurat prosty,
ale skłądanie kilku operacji w jednej lini skutecznie ją zaciemnia.
Ja sobie piszę komentarze co dana linia robi, ale z cudzym kodem jest
problem bo trzeba sie zastanowić.
A co to jest? Kto zgadnie?
IF (a := b := c + d * e:= g/2) <= 10
Algol68. Co wygrałem?
Waldek
--
My jsme Borgové. Sklopte štíty a vzdejte se. Odpor je marný.
Adam Dybkowski
Guest
Thu Feb 10, 2011 9:00 pm
W dniu 2011-02-10 00:05 Grzegorz Niemirowski napisał(a):
Quote:
DDRB = 0b11111111;
Głupie pytanie: taki zapis to jakaś konwencja AVR-GCC? AFAIK standard
języka C nie definiuje zapisu ciągów bitów i trzeba np. szesnastkowo.
Rozszerzenie gcc. Podobnie jak m.in. bardzo wygodna konstrukcja:
switch (x) {
case 0 ... 10:
zamiast pisanie 10 razy case z kolejnymi numerkami.
Inne całkiem ciekawe rozszerzenie to zapożyczona z C++ możliwość
definiowania zmiennych gdziekolwiek w kodzie a nie tylko na początku
funkcji. Możliwość używania rozszerzeń w gcc trzeba włączyć flagą
kompilatora, np.: -std=gnu99
--
Adam Dybkowski
http://dybkowski.net/
Uwaga: przed wysłaniem do mnie maila usuń cyfry z adresu.
Goto page Previous 1, 2, 3