AVR GCC assembler AS....

Nov 26, 2004 11 Replies
òÁÄ ÐÒÉ×ÅÔÓÔ×Ï×ÁÔØ!
ëÁË ÍÎÅ × ÓÁÂÖÅ ÐÏÌÕÞÉÔØ ÓÍÅÝÅÎÉÅ ÁÄÒÅÓÁ ÔÁÂÌÉÃÙ ÉÚ ÓÅËÃÉÉ .data ÉÌÉ .text ? ôÁÂÌÉÃÁ ÏÂßÑ×ÌÅÎÁ ËÁË ÍÅÔËÁ.
ó Õ×ÁÖÅÎÉÅÍ, P.S.
ðÒÉ×ÅÔ áÌÅËÓÅÊ! AM> ôÁË × gcc ÉÌÉ × gas? äÁ......, ÐÒÏÛÕ ÐÒÏÝÅÎÉÑ......, ÎÅ GCC, Á GNU...., ÎÏ ÁÓÓÅÍÂÌÅÒ AS.... (avr-as.exe)

sp>> ÐÏÌÕÞÉÔØ ÓÍÅÝÅÎÉÅ ÁÄÒÅÓÁ ÔÁÂÌÉÃÙ sp>> ÉÚ ÓÅËÃÉÉ .data ÉÌÉ .text ? ôÁÂÌÉÃÁ ÏÂßÑ×ÌÅÎÁ ËÁË ÍÅÔËÁ.

AM> óÍÅÝÅÎÉÅ ÏÔÎÏÓÉÔÅÌØÎÏ ÞÅÇÏ? ñ ÎÉÞÅÇÏ ÎÅ ÐÏÎÑÌ. ôÙ ÂÙ ÈÏÔØ ÐÒÉÍÅÒ AM> ÐÒÉ×ÅÌ... ïë..... ðÏÐÙÔËÁ ÐÏÌÕÞÉÔØ ÎÁÞÁÌØÎÙÊ ÁÄÒÅÓ ÔÁÂÌÉÃÙ × ÏÂÌÁÓÔÉ SRAM (ÉÌÉ Flash):

;---------- ÏÂßÑ×ÌÑÅÍ ÔÁÂÌÉÃÕ × ÏÂÌÁÓÔÉ ÄÁÎÎÙÈ .data Table: .byte 1, 2, 3, 4, 0

;---------- ÏÂÌÁÓÔØ ËÏÄÁ .text ldi r28, Table

÷ÓÅ ÂÙÌÏ ÂÙ ÈÏÒÏÛÏ, ÅÓÌÉ ÂÙÔØ Õ×ÅÒÅÎÎÙÍ, ÞÔÏ ÔÁÂÌÉÃÁ ÎÁÞÉÎÁÅÔÓÑ É ÌÅÖÉÔ × ÄÉÁÐÁÚÏÎÅ ÁÄÒÅÓÏ× ÄÏ 0xFF. óÏÂÓÔ×ÅÎÎÏ ÐÒÏÂÌÅÍÁ É ÓÏÓÔÏÉÔ × ÔÏÍ, ËÁË ÚÁÇÒÕÚÉÔØ ÓÔÁÒÛÕÀ ÞÁÓÔØ ÁÄÒÅÓÁ. ðÏÐÙÔËÁ: ldi r28, Table & 255 ;low ldi r29, Table >> 8 ;high ÐÒÉ×ÏÄÉÔ Ë ÏÛÉÂËÅ "Error: invalid sections for operation on `Table' and `L0'" äÉÒÅËÔÉ×Ù ÁÓÓÅÍÂÌÅÒÁ "AVR Studio" ldi r28, low(Table) ldi r29, high(Table) ÎÅ ËÁÔÑÔ....... ÷ÙÄÁÅÔÓÑ ÏÛÉÂËÁ "Error: garbage at end of line"........ ó Õ×ÁÖÅÎÉÅÍ, P.S.
ðÒÉ×ÅÔ serge!

26 Nov 04 11:12, serge polish ÐÉÓÁÌ All:

sp> ëÁË ÍÎÅ × ÓÁÂÖÅ

ôÁË × gcc ÉÌÉ × gas?

sp> ÐÏÌÕÞÉÔØ ÓÍÅÝÅÎÉÅ ÁÄÒÅÓÁ ÔÁÂÌÉÃÙ sp> ÉÚ ÓÅËÃÉÉ .data ÉÌÉ .text ? ôÁÂÌÉÃÁ ÏÂßÑ×ÌÅÎÁ ËÁË ÍÅÔËÁ.

óÍÅÝÅÎÉÅ ÏÔÎÏÓÉÔÅÌØÎÏ ÞÅÇÏ? ñ ÎÉÞÅÇÏ ÎÅ ÐÏÎÑÌ. ôÙ ÂÙ ÈÏÔØ ÐÒÉÍÅÒ ÐÒÉ×ÅÌ... ÷ÓÅÇÏ ÎÁÉÌÕÞÛÅÇÏ, [Team PCAD 2000] áÌÅËÓÅÊ í. ... ëÒÙÓËÁÓ. ðÏÔÏÍÕ ÞÔÏ ËÒÙÓÁ ×ÁÍ ÄÏ×ÅÒÑÅÔ.
ðÒÉ×ÅÔ áÌÅËÓÅÊ!

AM> ldi r28, lo8(Table) AM> ldi r29, hi8(Table)

lo8, hi8 ! ×ÏÔ ÞÔÏ ÍÎÅ ÂÙÌÏ ÎÕÖÎÏ! âÅÚÍÅÒÎÏ ÂÌÁÇÏÄÁÒÅÎ, áÌÅËÓÅÊ!

ó Õ×ÁÖÅÎÉÅÍ, P.S.
ðÒÉ×ÅÔ serge!

26 Nov 04 13:41, serge polish ÐÉÓÁÌ Alex Mogilnikov:

AM>> óÍÅÝÅÎÉÅ ÏÔÎÏÓÉÔÅÌØÎÏ ÞÅÇÏ? ñ ÎÉÞÅÇÏ ÎÅ ÐÏÎÑÌ. ôÙ ÂÙ ÈÏÔØ AM>> ÐÒÉÍÅÒ ÐÒÉ×ÅÌ... sp> ïë..... sp> ðÏÐÙÔËÁ ÐÏÌÕÞÉÔØ ÎÁÞÁÌØÎÙÊ ÁÄÒÅÓ ÔÁÂÌÉÃÙ × ÏÂÌÁÓÔÉ SRAM (ÉÌÉ Flash):

sp> ;---------- ÏÂßÑ×ÌÑÅÍ ÔÁÂÌÉÃÕ × ÏÂÌÁÓÔÉ ÄÁÎÎÙÈ sp> .data sp> Table: sp> .byte 1, 2, 3, 4, 0

áÂÓÏÌÀÔÎÙÊ ÁÄÒÅÓ ÎÁÞÁÌÁ ÔÁÂÌÉÃÙ? ôÏÇÄÁ ÜÔÏ Table - ÐÏÓÌÅ ÒÁÚÍÅÝÅÎÉÑ ÓÅËÃÉÉ .data ÌÉÎËÅÒ ×ÙÞÉÓÌÉÔØ ÁÄÒÅÓ Table É ÓÏÏÔ×ÅÔÓÔ×ÅÎÎÏ ÎÁÓÔÒÏÉÔ ËÏÄ × ÍÅÓÔÁÈ ÅÇÏ ÉÓÐÏÌØÚÏ×ÁÎÉÑ.

sp> ÷ÓÅ ÂÙÌÏ ÂÙ ÈÏÒÏÛÏ, ÅÓÌÉ ÂÙÔØ Õ×ÅÒÅÎÎÙÍ, ÞÔÏ ÔÁÂÌÉÃÁ ÎÁÞÉÎÁÅÔÓÑ É sp> ÌÅÖÉÔ × ÄÉÁÐÁÚÏÎÅ ÁÄÒÅÓÏ× ÄÏ 0xFF. óÏÂÓÔ×ÅÎÎÏ ÐÒÏÂÌÅÍÁ É ÓÏÓÔÏÉÔ × sp> ÔÏÍ, ËÁË ÚÁÇÒÕÚÉÔØ ÓÔÁÒÛÕÀ ÞÁÓÔØ ÁÄÒÅÓÁ.

sp> ðÏÐÙÔËÁ: sp> ldi r28, Table & 255 ;low sp> ldi r29, Table >> 8 ;high sp> ÐÒÉ×ÏÄÉÔ Ë ÏÛÉÂËÅ "Error: invalid sections for operation on `Table' sp> and `L0@'"

ldi r28, lo8(Table) ldi r29, hi8(Table)

sp> äÉÒÅËÔÉ×Ù ÁÓÓÅÍÂÌÅÒÁ "AVR Studio" sp> ldi r28, low(Table) sp> ldi r29, high(Table) sp> ÎÅ ËÁÔÑÔ....... ÷ÙÄÁÅÔÓÑ ÏÛÉÂËÁ "Error: garbage at end of sp> line"........

ìÏÇÉÞÎÏ. ðÒÉ ÞÅÍ ÔÕÔ AVR Studio? ÷ÓÅÇÏ ÎÁÉÌÕÞÛÅÇÏ, [Team PCAD 2000] áÌÅËÓÅÊ í. ... HÅ ÍÅÓÔÏ ÐÏÒÔÉÔ ÞÅÌÏ×ÅËÁ, Á ÞÅÌÏ×ÅË ÍÅÓÔÏ.

Hello serge polish!

AM>> ldi r28, lo8(Table) AM>> ldi r29, hi8(Table)

sp> lo8, hi8 ! ×ÏÔ ÞÔÏ ÍÎÅ ÂÙÌÏ ÎÕÖÎÏ! sp> âÅÚÍÅÒÎÏ ÂÌÁÇÏÄÁÒÅÎ, áÌÅËÓÅÊ!

ðÏÞÅÍÕ-ÔÏ ÓpÁÚÕ ×ÓÐÏÍÎÉÌÓÑ ÁÎÅËÄÏÔ : "... ÎÕ, ÓÅÊÞÁÓ ÍÏÉ ÐÁÃÁÎÙ ×ÁÍ ÐÏËÁÖÕÔ - ËÔÏ ÔÕÔ ÉÚ ÎÁÓ LoHi !.." ö&}

sp> ldi r29, Table >> 8 ;high sp> ÐÒÉ×ÏÄÉÔ Ë ÏÛÉÂËÅ "Error: invalid sections for operation on `Table' and sp> `L0'"

Table / 256 ?

ðÒÉ×ÅÔ áÌÅËÓÅÊ! ëÁË ÐÏÌÕÞÉÌÏÓØ, ÞÔÏ ÄÉÒÅËÔÉ×Ù "lo8", "hi8" ÎÅ ÚÁÄÏËÕÍÅÎÔÉÒÏ×ÁÎÙ × ÒÁÚÄÅÌÅ "Using As"? ðÏ ÐÏÉÓËÕ ÎÁÛÅÌ ÉÈ ÉÓÐÏÌØÚÏ×ÁÎÉÅ ÔÏÌØËÏ × ÏÄÎÏÍ ÉÚ ÐÒÉÍÅÒÏ× ÒÁÚÄÅÌÁ "FAQ". ðÏÌÕÞÁÅÔÓÑ, ÞÔÏ ÜÔÏ ÄÁ×ÎÉÊ Unix'Ï×ÙÊ ÓÔÁÎÄÁÒÔ, ÐÏÄÄÅÒÖÉ×ÁÅÍÙÊ ËÏÍÐÉÌÑÔÏÒÏÍ, É ÐÒÉÎÉÍÁÅÍÙÊ ËÁË ÂÙ ÐÏ ÄÅÆÏÌÔÕ. é ÍÏÖÎÏ ÐÒÅÄÐÏÌÏÖÉÔØ, ÞÔÏ × ÜÔÏÍ ÄÅÆÏÌÔÅ ÅÓÔØ ÅÝÅ ÍÎÏÇÏ ÞÅÇÏ ÉÎÔÅÒÅÓÎÏÇÏ ÄÌÑ ÐÒÏÇÒÁÍÍÉÒÏ×ÁÎÉÑ × Unix-ÓÉÓÔÅÍÁÈ. çÄÅ ÍÏÖÎÏ ÐÏÄÒÏÂÎÅÊ ÐÏÞÉÔÁÔØ Ï ÔÏÍ, ÞÔÏ ËÁÓÁÅÔÓÑ ÐÒÏÇÒÁÍÍÉÒÏ×ÁÎÉÑ ÎÁ ÁÓÓÅÍÂÌÅÒÅ × Unix'Å ? ó Õ×ÁÖÅÎÉÅÍ, P.S.
ðÒÉ×ÅÔ, áÌÅËÓÅÊ!

AM> HÅ ÚÎÁÀ. HÏ × ÐÏÄÏÂÎÙÈ ÓÌÕÞÁÑÈ ÐÏÌÅÚÎÏ ÐÏÓÍÏÔÒÅÔØ, ËÁËÏÊ ËÏÄ ÇÅÎÅÒÉÔ AM> ÄÌÑ ÁÎÁÌÏÇÉÞÎÏÇÏ ÓÌÕÞÁÑ ËÏÍÐÉÌÑÔÏÒ.

äÁ....... ÐÏÌÅÚÎÏ ÄÌÑ ÏÐÔÉÍÉÚÁÃÉÉ É ÐÒÏ×ÅÒËÉ ÐÒÁ×ÉÌØÎÏÓÔÉ ËÏÄÁ......... HÏ, ËÁË ÐÒÁ×ÉÌÏ, × ÌÉÓÔÉÎÇÅ ÕÖÅ ×ÓÅ "ÒÁÓÓÔÁ×ÌÅÎÏ" ÐÏ ÍÅÓÔÁÍ....... á ×ÏÔ ËÏÇÄÁ × ÐÏÌÎÏÍ ÏÂßÅÍÅ ÎÅÉÚ×ÅÓÔÅÎ ÓÉÎÔÁËÓÉÓ, ÄÉÒÅËÔÉ×Ù, ÏÐÅÒÁÔÏÒÙ...... ÞÔÏ ÍÏÖÅÔ ÐÏÌÕÞÉÔØÓÑ ÈÏÒÏÛÅÇÏ......?...... ËÒÏÍÅ "ÉÚ×ÒÁÝÅÎÉÑ" ÎÁÄ ËÏÄÏÍ....... éÌÉ ×ÏÏÂÝÅ É ËÏÄÁ ÎÅ ÐÏÌÕÞÉÔØÓÑ :) ÷ÏÔ ÏÐÑÔØ ÓÔÏÌËÎÕÌÓÑ Ó ÏÞÅÒÅÄÎÏÊ ÚÁÍÏÒÏÞËÏÊ. ÷ÓÅ ÔÁ ÖÅ ÔÁÂÌÉÃÁ

#define var1 5 #define var2 68 #define var3 8

TABLE: .byte var1, var2, var3, 0

ëÁË ÏÂØÑÓÎÉÔØ AS'Õ, ÞÔÏ ÍÎÅ ÎÕÖÎÏ ÚÁÇÒÕÚÉÔØ ÎÅ ÚÎÁÞÅÎÉÅ var2, Á ÅÇÏ ÁÄÒÅÓ × ÔÁÂÌÉÃÅ??? ÷ÏÔ É ÚÁÎÉÍÁÀÓØ ÃÅÌÙÊ ÄÅÎØ ÔÅÍ, ÞÔÏ ÂÌÕÖÄÁÀ ÐÏ ÄÏËÕÍÅÎÔÁÃÉÉ...... ÉÌÉ ÞÔÏ: VAR_1: .byte var1 VAR_2: .byte var2 VAR_3: .byte var3, 0........ ??? ÓÔÙÄÎÏ ËÏÍÕ ÎÉÔØ ÐÏËÁÚÙ×ÁÔØ......... ó Õ×ÁÖÅÎÉÅÍ, P.S.
ðÒÉ×ÅÔ serge!

29 Nov 04 21:10, serge polish ÐÉÓÁÌ Alex Mogilnikov:

sp> á ×ÏÔ ËÏÇÄÁ × ÐÏÌÎÏÍ ÏÂßÅÍÅ ÎÅÉÚ×ÅÓÔÅÎ ÓÉÎÔÁËÓÉÓ, sp> ÄÉÒÅËÔÉ×Ù, ÏÐÅÒÁÔÏÒÙ...... ÞÔÏ ÍÏÖÅÔ ÐÏÌÕÞÉÔØÓÑ ÈÏÒÏÛÅÇÏ......?

HÕ ÕÖ, ÔÙ ÐÒÅÕ×ÅÌÉÞÉ×ÁÅÛØ. AFAIK ÎÉËÁËÉÈ ÓÐÅÃÉÆÉÞÎÙÈ ÉÍÅÎÎÏ ÄÌÑ avr target ÄÉÒÅËÔÉ× × gas ÎÅÔ, É ÓÉÎÔÁËÓÉÓ ÎÉÞÅÍ ÎÅ ÏÔÌÉÞÁÅÔÓÑ ÏÔ ÂÏÌØÛÉÎÓÔ×Á ÄÒÕÇÉÈ ÔÁÒÇÅÔÏ×. ÷ÏÔ ÓÐÅÃÉÆÉÞÎÙÅ ÏÐÅÒÁÔÏÒÙ Ë ÓÏÖÁÌÅÎÉÀ ÅÓÔØ, ÎÏ éíèï ÔÙ ÉÈ ÕÖÅ ÐÏÞÔÉ ×ÓÅ ÚÎÁÅÛØ - ËÒÏÍÅ hi8 É lo8 Ñ ÚÎÁÀ ÅÝÅ pm.

sp> ÷ÏÔ ÏÐÑÔØ ÓÔÏÌËÎÕÌÓÑ Ó ÏÞÅÒÅÄÎÏÊ ÚÁÍÏÒÏÞËÏÊ. sp> ÷ÓÅ ÔÁ ÖÅ ÔÁÂÌÉÃÁ

sp> #define var1 5 sp> #define var2 68 sp> #define var3 8

sp> TABLE: sp> .byte var1, var2, var3, 0

sp> ëÁË ÏÂØÑÓÎÉÔØ AS'Õ, ÞÔÏ ÍÎÅ ÎÕÖÎÏ ÚÁÇÒÕÚÉÔØ ÎÅ ÚÎÁÞÅÎÉÅ var2, Á ÅÇÏ sp> ÁÄÒÅÓ × ÔÁÂÌÉÃÅ???

.data TABLE: .byte var1, var2, var3, 0

.text ldi r28, lo8(TABLE+1) ldi r29, hi8(TABLE+1)

sp> ÷ÏÔ É ÚÁÎÉÍÁÀÓØ ÃÅÌÙÊ ÄÅÎØ ÔÅÍ, ÞÔÏ ÂÌÕÖÄÁÀ ÐÏ sp> ÄÏËÕÍÅÎÔÁÃÉÉ......

úÁÞÅÍ? :) ÷ÓÅ, ÞÔÏ ÎÕÖÎÏ, ÔÙ ÕÖÅ ÚÎÁÅÛØ.

sp> ÉÌÉ ÞÔÏ: sp> VAR_1: sp> .byte var1 sp> VAR_2: sp> .byte var2 sp> VAR_3: sp> .byte var3, 0........ ??? ÓÔÙÄÎÏ ËÏÍÕ ÎÉÔØ ÐÏËÁÚÙ×ÁÔØ.........

ðÏÞÅÍÕ? ÷ÓÅÇÏ ÎÁÉÌÕÞÛÅÇÏ, [Team PCAD 2000] áÌÅËÓÅÊ í. ... åÓÌÉ ÔÙ ËÏÐ, ÐÏÞÅÍÕ Ñ ×ÅÓØ ×ÚÍÏË?

Mon Nov 29 2004 23:11, Alex Mogilnikov wrote to serge polish:

ðÒÉ×ÅÔ áÌÅËÓÅÊ!

AM> HÕ ÕÖ, ÔÙ ÐÒÅÕ×ÅÌÉÞÉ×ÁÅÛØ. AFAIK ÎÉËÁËÉÈ ÓÐÅÃÉÆÉÞÎÙÈ ÉÍÅÎÎÏ ÄÌÑ avr AM> target ÄÉÒÅËÔÉ× × gas ÎÅÔ, É ÓÉÎÔÁËÓÉÓ ÎÉÞÅÍ ÎÅ ÏÔÌÉÞÁÅÔÓÑ ÏÔ ÂÏÌØÛÉÎÓÔ×Á AM> ÄÒÕÇÉÈ ÔÁÒÇÅÔÏ×. ÷ÏÔ ÓÐÅÃÉÆÉÞÎÙÅ ÏÐÅÒÁÔÏÒÙ Ë ÓÏÖÁÌÅÎÉÀ ÅÓÔØ, ÎÏ éíèï ÔÙ AM> ÉÈ ÕÖÅ ÐÏÞÔÉ ×ÓÅ ÚÎÁÅÛØ - ËÒÏÍÅ hi8 É lo8 Ñ ÚÎÁÀ ÅÝÅ pm.

ôÑÖÅÌÏ ÓËÁÚÁÔØ ÞÔÏ ÔÏ ÐÏ ÜÔÏÍÕ ÐÏ×ÏÄÕ..... ëÏÍÐÉÌÑÔÏÒ ÄÌÑ ÍÅÎÑ ÎÏ×ÙÊ....... HÏ ÔÏ, ÞÔÏ ÐÏÑ×ÉÌÉÓØ ÓÕÝÅÓÔ×ÅÎÎÙÅ ÏÇÒÁÎÉÞÅÎÉÑ, ÐÏ ÓÒÁ×ÎÅÎÉÀ Ó ËÏÍÐÉÌÑÔÏÒÁÍÉ ÄÌÑ ÄÒÕÇÉÈ ÍÁÛÉÎ (ÉÍÅÀ ××ÉÄÕ tasm É x8051) - ÜÔÏ ÆÁËÔ......

.data TABLE: .byte var1, var2, var3, 0

.text ldi r28, lo8(TABLE+1) ldi r29, hi8(TABLE+1)

ïÏÏ.....! ÷ ÜÔÏÍ ÓÌÕÞÁÅ ÎÕÖÎÏ ÅÝÅ ÓÌÅÄÉÔØ É ÚÁ ÐÏÒÑÄËÏÍ ÄÁÎÎÙÈ × ÔÁÂÌÉÃÅ..... ÄÏÐÏÌÎÉÔÅÌØÎÙÊ ÇÅÍÏÒÒÏÊ......

sp>> .byte var2 sp>> VAR_3: sp>> .byte var3, 0........ ??? ÓÔÙÄÎÏ ËÏÍÕ ÎÉÔØ ÐÏËÁÚÙ×ÁÔØ.........

AM> ðÏÞÅÍÕ? äÁ ÓÔÒÏÊÎÏÓÔÉ ÎÅÔÕ...... ÏÄÎÁËÏ, ÅÓÌÉ ÎÅÔ ÄÒÕÇÏÇÏ ÒÅÛÅÎÉÑ - ÐÒÉÄÅÔÓÑ ÐÏËÁÚÙ×ÁÔØ.... :)

á ÞÔÏ ÄÅÌÁÅÔ ÏÐÅÒÁÔÏÒ pm? ÷ ÈÅÌÐÅ Ñ ×ÏÏÂÝÅ ÎÅ ÎÁÛÅÌ ÎÁ ÎÅÇÏ ÓÓÙÌÏË....... ó Õ×ÁÖÅÎÉÅÍ, P.S.
ðÒÉ×ÅÔ serge!

30 Nov 04 11:53, serge polish ÐÉÓÁÌ Alex Mogilnikov:

sp> .data sp> TABLE: sp> .byte var1, var2, var3, 0

sp> .text sp> ldi r28, lo8(TABLE+1) sp> ldi r29, hi8(TABLE+1)

sp> ïÏÏ.....! ÷ ÜÔÏÍ ÓÌÕÞÁÅ ÎÕÖÎÏ ÅÝÅ ÓÌÅÄÉÔØ É ÚÁ ÐÏÒÑÄËÏÍ ÄÁÎÎÙÈ × sp> ÔÁÂÌÉÃÅ..... ÄÏÐÏÌÎÉÔÅÌØÎÙÊ ÇÅÍÏÒÒÏÊ......

ëÁË Ñ ÐÏÎÑÌ, ÐÏ ÕÓÌÏ×ÉÀ ÚÁÄÁÞÉ ÂÙÌÏ "ÚÁÇÒÕÚÉÔØ ÁÄÒÅÓ 1-ÇÏ (ÓÞÉÔÁÑ ÏÔ ÎÕÌÑ) ÜÌÅÍÅÎÔÁ ÔÁÂÌÉÃÙ". òÁÚ ÜÌÅÍÅÎÔÙ ÎÕÍÅÒÏ×ÁÎÙ, ÚÎÁÞÉÔ ÐÏÒÑÄÏË ×ÁÖÅÎ. ðÏ ÕÓÌÏ×ÉÀ. åÓÌÉ ÖÅ ÐÏÒÑÄÏË ÎÅ ×ÁÖÅÎ, ÔÏ ÜÔÏ ÕÖÅ ÎÅ ÄÏÓÔÕÐ Ë ÜÌÅÍÅÎÔÕ ÔÁÂÌÉÃÙ, ÜÔÏ ÄÏÓÔÕÐ Ë "ÏÔÄÅÌØÎÏ ÓÔÏÑÝÅÍÕ" ÏÂßÅËÔÕ. á ÚÎÁÞÉÔ ÏÐÒÅÄÅÌÑÊ ÕËÁÚÙ×ÁÀÝÕÀ ÎÁ ÎÅÇÏ ÍÅÔËÕ. ðÏ-ÍÏÅÍÕ ÜÔÏ ÏÞÅ×ÉÄÎÏ.

sp>>> .byte var2 sp>>> VAR_3: sp>>> .byte var3, 0........ ??? ÓÔÙÄÎÏ ËÏÍÕ ÎÉÔØ sp>>> ÐÏËÁÚÙ×ÁÔØ.........

AM>> ðÏÞÅÍÕ? sp> äÁ ÓÔÒÏÊÎÏÓÔÉ ÎÅÔÕ...... ÏÄÎÁËÏ, ÅÓÌÉ ÎÅÔ ÄÒÕÇÏÇÏ ÒÅÛÅÎÉÑ - ÐÒÉÄÅÔÓÑ sp> ÐÏËÁÚÙ×ÁÔØ.... :)

óÔÒÏÊÎÏÓÔØ ÓÏÓÔÏÉÔ × ÔÏÍ, ÞÔÏ ÏÐÒÅÄÅÌÑÅÔÓÑ ÚÎÁÞÅÎÉÅ ÏÂßÅËÔÁ (var3) É ÓÉÍ×ÏÌ, ÕËÁÚÙ×ÁÀÝÉÊ ÎÁ ÜÔÏÔ ÏÂßÅËÔ (VAR_3). åÓÌÉ ÔÅÂÅ ÎÅ ÎÒÁ×ÉÔÓÑ ÓÁÍÁ ÆÏÒÍÁ ÚÁÐÉÓÉ, ÍÏÖÅÛØ ÏÐÒÅÄÅÌÉÔØ ÍÁËÒÏÓ, ÎÁÐÒÉÍÅÒ ÔÁËÏÊ:

#define DEF_VAR(name, value) \ name: .byte value

sp> á ÞÔÏ ÄÅÌÁÅÔ ÏÐÅÒÁÔÏÒ pm? ÷ ÈÅÌÐÅ Ñ ×ÏÏÂÝÅ ÎÅ ÎÁÛÅÌ ÎÁ ÎÅÇÏ sp> ÓÓÙÌÏË.......

ïÎ ÐÒÅÏÂÒÁÚÕÅÔ ÂÁÊÔÏ×ÙÊ ÁÄÒÅÓ × ÐÏÇÒÁÍÍÎÏÊ ÐÁÍÑÔÉ × ÁÄÒÅÓ ÉÎÓÔÒÕËÃÉÉ (Ä×ÕÈÂÁÊÔÏ×ÏÇÏ ÓÌÏ×Á), ÔÏ ÅÓÔØ, ÐÒÏÝÅ ÇÏ×ÏÒÑ, ÄÅÌÉÔ ÅÇÏ ÎÁ 2. ÷ÏÔ ÐÒÉÍÅÒ ÓÌÕÞÁÑ, ËÏÇÄÁ ÜÔÏ ÎÕÖÎÏ:

fff: ËÁËÏÊ-ÔÏ ËÏÄ ret

.....

ldi r24,lo8(pm(fff)) ; ÚÁÐÉÓÙ×ÁÅÍ ÁÄÒÅÓ ÆÕÎËÃÉÉ fff × fp ldi r25,hi8(pm(fff)) sts (fp)+1,r25 sts fp,r24

.....

lds r30,fp ; ×ÙÚÙ×ÁÅÍ ÆÕÎËÃÉÀ ÐÏ ÁÄÒÅÓÕ × fp lds r31,(fp)+1 icall

÷ÓÅÇÏ ÎÁÉÌÕÞÛÅÇÏ, [Team PCAD 2000] áÌÅËÓÅÊ í. ... óÌÅÐÏÊ ðØÀ, çÌÕÈÏÊ åÍ...

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required