-
Path: news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.glorb.com!p
ostnews.google.com!t13g2000vbo.googlegroups.com!not-for-mail
From: Maciej Sobczak <s...@g...com>
Newsgroups: pl.comp.programming
Subject: Re: które języki 'historyczne' sš ważne
Date: Wed, 2 Feb 2011 14:07:46 -0800 (PST)
Organization: http://groups.google.com
Lines: 52
Message-ID: <a...@t...googlegroups.com>
References: <2...@n...onet.pl>
<f...@t...askar.com.pl>
<4d470681$0$2436$65785112@news.neostrada.pl>
<r...@4...com>
<4d47519c$0$2437$65785112@news.neostrada.pl> <ii8g1j$768$1@news.onet.pl>
<4d47d675$0$2447$65785112@news.neostrada.pl> <ii8l0l$7j3$1@solani.org>
<4d47fdf5$0$2456$65785112@news.neostrada.pl> <ii90a6$hdr$1@news.onet.pl>
<4d480625$0$2456$65785112@news.neostrada.pl> <ii9256$prk$1@news.onet.pl>
<ii9v6d$vi$1@news.onet.pl>
<6...@s...googlegroups.com>
<iibdub$7c6$2@news.onet.pl> <iibh18$la9$1@news.onet.pl>
<a...@2...googlegroups.com>
<iibrm9$3ec$1@news.onet.pl>
<3...@f...googlegroups.com>
<iic0tf$pr3$1@news.onet.pl>
NNTP-Posting-Host: 85.2.36.147
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: quoted-printable
X-Trace: posting.google.com 1296684466 11620 127.0.0.1 (2 Feb 2011 22:07:46 GMT)
X-Complaints-To: g...@g...com
NNTP-Posting-Date: Wed, 2 Feb 2011 22:07:46 +0000 (UTC)
Complaints-To: g...@g...com
Injection-Info: t13g2000vbo.googlegroups.com; posting-host=85.2.36.147;
posting-account=bMuEOQoAAACUUr_ghL3RBIi5neBZ5w_S
User-Agent: G2/1.0
X-HTTP-UserAgent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.2.10)
Gecko/20100914 Firefox/3.6.10,gzip(gfe)
Xref: news-archive.icm.edu.pl pl.comp.programming:188570
[ ukryj nagłówki ]On Feb 2, 5:31 pm, Jędrzej Dudkiewicz <jedrzej.dudkiew...@nospam-
gmail.com> wrote:
> Czyli tak jak bym się spodziewał. Bardzo śliczne. Co prawda wyklucza to,
> możliwe w C++, indeksowanie pamięci stringami... czyż nie? :)
Nie. :-)
Pamiętaj, że nawet przy adresowaniu pamięci stringami musi istnieć
jakieś mapowanie tych adresów na liczby - chociażby po to, żeby można
było mieć ptrdiff_t, arytmetykę wskaźników, sizeof, itd. To wszystko
jest ze sobą powiązane.
W C++ istnieje też mniej lub bardziej zdefiniowany rzut wskaźnika na
int i z powrotem, więc związek wskaźników z liczbami jakiś jest.
Podobnie jest w Adzie, chociaż nie ma arytmetyki wskaźników.
W każdym razie zarówno C++ jak i Ada starają się tak rozmyć pojęcie
adresu, żeby niczego konkretnego nie sugerować. W praktyce i tak
wiadomo, co to oznacza na normalnym sprzęcie, ale nie zamyka się drzwi
dla różnych emulatorów czy innych maszyn wirtualnych, gdzie adres może
oznaczać coś innego.
Czyli w obu językach siła wyrazu jest podobna. Można swobodnie pisać w
nich systemy operacyjne, można też wyobrazić sobie adresowanie
stringami w emulatorze.
Jest jednak pewna ciekawa różnica - w C++ nie ma osobnego pojęcia
adresu, to jest wplecione w pojęcie wskaźnika void* i istnieje
zastrzeżenie, że void* ma mieć taką samą reprezentację jak char*.
Czyli adresy i wskaźniki to w zasadzie to samo, nie rozdziela się tych
rzeczy.
Natomiast w Adzie czegoś takiego nie ma - adres to wartośc typu
System.Address, natomiast wskaźnik to tzw. "access value" i z adresem
nie ma żadnego związku poza tym, że istnieją osobne operacje do ich
wzajemnej konwersji. Nie ma wymagania na reprezentację, więc wskaźniki
mogą być tłuste, albo np. wskaźniki na stos mogą mieć zupełnie inny
format, niż wskaźniki na stertę (nawet na ten sam typ), itd. Czyli Ada
ma tu nawet większą swobodę implementacyjną, bez poświęcania
funkcjonalności.
--
Maciej Sobczak * http://www.msobczak.com * http://www.inspirel.com
Następne wpisy z tego wątku
- 02.02.11 22:07 Wojciech Jaczewski
- 02.02.11 23:10 A.L.
- 03.02.11 00:11 Wojciech Jaczewski
- 03.02.11 00:54 Andrzej Jarzabek
- 03.02.11 01:10 Andrzej Jarzabek
- 05.02.11 23:51 Michal
- 06.02.11 12:40 Michoo
Najnowsze wątki z tej grupy
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
Najnowsze wątki
- 2025-07-23 Wrocław => Senior Key Account Manager IT <=
- 2025-07-23 Trójmiasto => Head of Social Media <=
- 2025-07-23 Rzeszów => Spedytor Międzynarodowy <=
- 2025-07-23 Lublin => ERP Implementation Consultant (AP Module) <=
- 2025-07-23 Środa Wielkopolska => SAP FI/CO Internal Consultant <=
- 2025-07-23 Warszawa => Inżynier oprogramowania .Net <=
- 2025-07-23 Kraków => Kotlin Developer <=
- 2025-07-23 Żerniki => Dyspozytor Międzynarodowy <=
- 2025-07-23 Warszawa => Java Developer <=
- 2025-07-23 Wrocław => Konsultant wdrożeniowy (systemy controlingowe) <=
- 2025-07-22 Genialna toaleta Urobot, automatycznie badająca mocz i kał z Taiwanu
- 2025-07-22 Thunderbird i dysk...
- 2025-07-22 Warszawa => Programista Full Stack .Net <=
- 2025-07-22 Warszawa => Software .Net Developer <=
- 2025-07-22 Warszawa => Asystent ds. Sprzedaży i Rozwoju Klienta <=