Adresowanie w C



Masz problem? Zapytaj na forum elektroda.pl

Poprzedni Następny
Wiadomość
Spis treści
From: "Marcin Poniatowski" <mponiat_at_nospam_wp.pl>
Subject: Adresowanie w C
Date: Tue, 22 Mar 2005 19:45:03 +0100


Witam !!!

W jaki sposob zdefiniowac tablice bajtow np taka:
const char bytes [] = {0, 1, 2, 3, 4};
w taki sposob aby zaczynala sie od okreslonego adresu np: 100.

W asemblerze powinna miec postac:

org 100
bytes:
DB 0
DB 1
DB 2
DB 3
DB 4

z gory dziekuje
Marcin.



Poprzedni Następny
Wiadomość
Spis treści
From: "Piotr Wyderski" <wyderskiREMOVE_at_nospam_ii.uni.wroc.pl>
Subject: Re: Adresowanie w C
Date: Tue, 22 Mar 2005 20:01:28 +0100


Marcin Poniatowski wrote:

W jaki sposob zdefiniowac tablice bajtow np taka:
const char bytes [] = {0, 1, 2, 3, 4};
w taki sposob aby zaczynala sie od okreslonego adresu np: 100.

W C(++) nie da sie. Jesli chcesz cos takiego osiagnac, to
adres tablicy nalezy wymusic na poziomie linkera. W GCC
to jest calkiem proste (pisze sie odpowiedni skrypt) i kilkukrotnie
z tego sam korzystalem, a w innych kompilatorach to nie wiem.

Pozdrawiam
Piotr Wyderski





Poprzedni Następny
Wiadomość
Spis treści
From: Dawid Pawlata <dawidpawlata_at_nospam_wp.pl>
Subject: Re: Adresowanie w C
Date: Tue, 22 Mar 2005 21:19:12 +0100


Marcin Poniatowski wrote:
Witam !!!

W jaki sposob zdefiniowac tablice bajtow np taka:
const char bytes [] = {0, 1, 2, 3, 4};
w taki sposob aby zaczynala sie od okreslonego adresu np: 100.

W asemblerze powinna miec postac:

* pamiec programu *
org 100
bytes:
DB 0
DB 1
DB 2
DB 3
DB 4

z gory dziekuje
Marcin.



To prawda, ze w ansi c nie da sie tego osiagnac, jednak wiele
kompilatorow na mikrokontrolery udostepnia pewne rozszerzenia, ale to
juz zalezy od konkretnego kompilatora. Napisz pod czym piszesz.

--
pozdrawiam
Dawid Pawlata

Poprzedni Następny
Wiadomość
Spis treści
From: "Marcin Poniatowski" <mponiat_at_nospam_op.pl>
Subject: Re: Adresowanie w C
Date: 23 Mar 2005 12:13:15 +0100


Dziekuje za pomoc.

Chyba zrobie to w asmie i dodam do linkera.
uzywam "Microtec Research, Inc. ANSI C Compiler" lub w Introl pod motorole
68332.

Dzieki za odpowiedzi
Marcin



--
Wysłano z serwisu OnetNiusy: http://niusy.onet.pl

Poprzedni Następny
Wiadomość
Spis treści
From: "sinaath" <sinaath_at_nospam_killthis.gmail.com>
Subject: Re: Adresowanie w C
Date: Wed, 23 Mar 2005 14:37:05 +0100


W jaki sposob zdefiniowac tablice bajtow np taka:
const char bytes [] =3D {0, 1, 2, 3, 4};
w taki sposob aby zaczynala sie od okreslonego adresu np: 100.
=20
W asemblerze powinna miec postac:
=20
* pamiec programu *
org 100

hmm no to zalezy od tego pod czym piszesz..
np w mplabie dla pica sie to robi za pomoca dyrektywy #pragma

przyklad:
#pragma udata myBuf =3D 0x0100
char myBuf[50];
#pragma udata

sinaath
--=20
reply to: my_nick_at_nospam_gmail.com

Computer games don't affect kids; I mean if Pac Man affected us as kids,
we would all be running around in darkened rooms, munching magic pills
and listening to repetitive electronic music.