Главная » Просмотр файлов » А.В. Столяров - Программирование на языке ассемблера NASM для ОС Unix

А.В. Столяров - Программирование на языке ассемблера NASM для ОС Unix (1110582), страница 8

Файл №1110582 А.В. Столяров - Программирование на языке ассемблера NASM для ОС Unix (А.В. Столяров - Программирование на языке ассемблера NASM для ОС Unix) 8 страницаА.В. Столяров - Программирование на языке ассемблера NASM для ОС Unix (1110582) страница 82019-04-28СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 8)

Ïîïðîáóåìñíà÷àëà îáúÿñíèòü, ÷òî òàêîå ñîáîé ïðåäñòàâëÿþò ýòè ìåòêè ¾âîîáùå¿,à ïîòîì ðàññêàæåì, çà÷åì íóæíà ìåòêà â äàííîì êîíêðåòíîì ñëó÷àå.17 ×èòàòåëü, óæå èìåþùèé îïûò ïðîãðàììèðîâàíèÿ íà ÿçûêå àññåìáëåðà, ìîæåòçàìåòèòü, ÷òî ¾ïðàâèëüíåå¿ ýòî ñäåëàòü ñîâñåì äðóãîé êîìàíäîé: xor eax, eax, ïîñêîëüêó ýòî ïîçâîëÿåò äîñòè÷ü òîãî æå ýôôåêòà áûñòðåå è ñ ìåíüøèìè çàòðàòàìèïàìÿòè; îäíàêî äëÿ ïðîñòåéøåãî ó÷åáíîãî ïðèìåðà òàêîé òðþê ñëèøêîì ñëîæåí èòðåáóåò íåîïðàâäàííî äëèííûõ ïîÿñíåíèé. Âïðî÷åì, ïîçæå ìû ê ýòîìó âîïðîñó âåðí¼ìñÿ è îáÿçàòåëüíî ðàññìîòðèì ýòîò è äðóãèå ïîäîáíûå òðþêè.26Êîìàíäó mov eax,0 àññåìáëåð ïðåîáðàçóåò â íåêèé ìàøèííûé êîä18 ,êîòîðûé âî âðåìÿ âûïîëíåíèÿ ïðîãðàììû áóäåò íàõîäèòüñÿ â êàêîé-òîîáëàñòè îïåðàòèâíîé ïàìÿòè (â äàííîì ñëó÷àå â ïÿòè ÿ÷åéêàõ, èäóùèõïîäðÿä).  íåêîòîðûõ ñëó÷àÿõ íàì íóæíî çíàòü, êàêîé àäðåñ áóäåò èìåòüòà èëè èíàÿ îáëàñòü ïàìÿòè; åñëè ãîâîðèòü î êîìàíäàõ, òî çíàòü àäðåñíàì ìîæåò ïîòðåáîâàòüñÿ, íàïðèìåð, ÷òîáû â êàêîé-òî ìîìåíò çàñòàâèòüïðîöåññîð ïðîèçâåñòè â ýòî ìåñòî ïðîãðàììû óñëîâíûé èëè áåçóñëîâíûéïåðåõîä (ïðî ïåðåõîäû ìû óæå ãîâîðèëè, ñì.

ñòð. 11).Êîíå÷íî, ìû ìîæåì èñïîëüçîâàòü îïåðàòèâíóþ ïàìÿòü è äëÿ õðàíåíèÿ äàííûõ, à íå òîëüêî êîìàíä. Îáëàñòè ïàìÿòè, ïðåäíàçíà÷åííûåäëÿ äàííûõ, ìû îáû÷íî íàçûâàåì ïåðåìåííûìè , è äà¼ì èì èìåíà ïî÷òè òàê æå, êàê è â ïðèâû÷íûõ íàì ÿçûêàõ ïðîãðàììèðîâàíèÿ âûñîêîãî óðîâíÿ. Åñòåñòâåííî, íàì òðåáóåòñÿ çíàòü, êàêîé àäðåñ èìååò íà÷àëîîáëàñòè ïàìÿòè, îòâåä¼ííîé ïîä ïåðåìåííóþ. Àäðåñ, êàê ìû óæå ãîâîðèëè, çàäà¼òñÿ19 ÷èñëîì èç âîñüìè øåñòíàäöàòåðè÷íûõ öèôð, íàïðèìåð,18b4a0f0. Çàïîìèíàòü òàêèå ÷èñëà íàì íåóäîáíî, ê òîìó æå íà ìîìåíòíàïèñàíèÿ ïðîãðàììû ìû åù¼ íå çíàåì, â êàêîì èìåííî ìåñòå ïàìÿòèâ èòîãå îêàæåòñÿ ðàçìåùåíà òà èëè èíàÿ êîìàíäà èëè ïåðåìåííàÿ. Èçäåñü íàì íà ïîìîùü êàê ðàç è ïðèõîäÿò ìåòêè. Ìåòêà ýòî ââîäè-ìîå ïðîãðàììèñòîì ñëîâî (èäåíòèôèêàòîð), ñ êîòîðûì àññåìáëåð àññîöèèðóåò íåêîòîðîå ÷èñëî, ÷àùå âñåãî àäðåñ â ïàìÿòè.

 äàííîì ñëó÷àå _start êàê ðàç è åñòü òàêàÿ ìåòêà. Åñëè àññåìáëåðâèäèò ìåòêó ïåðåä êîìàíäîé (èëè, êàê ìû óâèäèì ïîçæå, äèðåêòèâîé,âûäåëÿþùåé ïàìÿòü ïîä ïåðåìåííóþ), îí âîñïðèíèìàåò ýòî êàê óêàçàíèå çàâåñòè â ñâîèõ âíóòðåííèõ òàáëèöàõ íîâóþ ìåòêó è ñâÿçàòü ñ íåéñîîòâåòñòâóþùèé àäðåñ, åñëè æå ìåòêà âñòðå÷àåòñÿ â ïàðàìåòðàõ êîìàíäû, òî àññåìáëåð ¾âñïîìèíàåò¿, êàêîé èìåííî àäðåñ (èëè ïðîñòî ÷èñëî)ñâÿçàíî ñ äàííîé ìåòêîé è ïîäñòàâëÿåò ýòîò àäðåñ (÷èñëî) âìåñòî ìåòêèâ êîìàíäó.

Òàêèì îáðàçîì, ñ ìåòêîé _start â íàøåé ïðîãðàììå áóäåòñâÿçàíî ÷èñëî, ïðåäñòàâëÿþùåå ñîáîé àäðåñ ÿ÷åéêè, íà÷èíàÿ ñ êîòîðîéâ îïåðàòèâíîé ïàìÿòè áóäåò ðàçìåù¼í ìàøèííûé êîä, ñîîòâåòñòâóþùèéêîìàíäå mov eax,0 (êîä b8 00 00 00 00).Âàæíî ïîíèìàòü, ÷òî ìåòêè ñóùåñòâóþò òîëüêî â ïàìÿòè ñàìîãî àññåìáëåðà è òîëüêî âî âðåìÿ òðàíñëÿöèè ïðîãðàììû. Ãîòîâàÿ ê èñïîëíåíèþ ïðîãðàììà íà ìàøèííîì êîäå íå áóäåò ñîäåðæàòü íèêàêèõ ìåòîê, àòîëüêî ïîäñòàâëåííûå âìåñòî íèõ àäðåñà.18 Îòìåòèì äëÿ íàãëÿäíîñòè, ÷òî ìàøèííûé êîä ýòîé êîìàíäû ñîñòîèò èç ïÿòèáàéòîâ: b8 00 00 00 00, ïåðâûé èç êîòîðûõ çàäà¼ò ñîáñòâåííî äåéñòâèå ¾ïîìåñòèòüçàäàííîå ÷èñëî â ðåãèñòð¿, à òàêæå è íîìåð ðåãèñòðà EAX. Îñòàëüíûå ÷åòûðå áàéòàçàäàþò (âñå âìåñòå) òî ÷èñëî, êîòîðîå äîëæíî áûòü ïîìåùåíî â ðåãèñòð; â äàííîìñëó÷àå ýòî ÷èñëî 0.19 Âî âñÿêîì ñëó÷àå, äëÿ òîãî ïðîöåññîðà è òîé ñèñòåìû, êîòîðûå ìû ðàññìàòðèâàåì.27Ïîñëå ìåòêè ìû ïîñòàâèëè ñèìâîë äâîåòî÷èÿ.

Èíòåðåñíî, ÷òî ìû ìîãëè áû åãî è íå ñòàâèòü. Íåêîòîðûå àññåìáëåðû îòëè÷àþò ìåòêè, ñíàáæåííûå äâîåòî÷èÿìè, îò ìåòîê áåç äâîåòî÷èé; íî íàø NASM ê òàêèìíå îòíîñèòñÿ. Èíà÷å ãîâîðÿ, ìû ñàìè ðåøàåì, ñòàâèòü äâîåòî÷èå ïîñëåìåòêè èëè íåò. Îáû÷íî ïðîãðàììèñòû ñòàâÿò äâîåòî÷èÿ ïîñëå ìåòîê, êîòîðûìè ïîìå÷åíû ìàøèííûå êîìàíäû (òî åñòü ïîñëå òàêèõ ìåòîê, êóäàìîæíî ïåðåäàòü óïðàâëåíèå), íî íå ñòàâÿò äâîåòî÷èÿ ïîñëå ìåòîê, ïîìå÷àþùèõ äàííûå â ïàìÿòè (ïåðåìåííûå). Ïîñêîëüêó ìåòêà _start êàêðàç è ïîìå÷àåò êîìàíäó, ïîñëå íå¼ ìû äâîåòî÷èå ðåøèëè ïîñòàâèòü.Îäíàêî âíèìàòåëüíûé ÷èòàòåëü ìîæåò îáðàòèòü âíèìàíèå, ÷òî íèêàêèõ ïåðåõîäîâ íà ìåòêó _start â íàøåé ïðîãðàììå íå äåëàåòñÿ. Çà÷åì æåîíà òîãäà íóæíà? Äåëî â òîì, ÷òî ñëîâî ¾_start¿ ýòî ñïåöèàëüíàÿ ìåòêà, êîòîðîé ïîìå÷àåòñÿ òî÷êà âõîäà â ïðîãðàììó , òî åñòü òî ìåñòîâ ïðîãðàììå, êóäà îïåðàöèîííàÿ ñèñòåìà äîëæíà ïåðåäàòü óïðàâëåíèåïîñëå çàãðóçêè ïðîãðàììû â îïåðàòèâíóþ ïàìÿòü; èíà÷å ãîâîðÿ, ìåòêà_start îáîçíà÷àåò òî ìåñòî, ñ êîòîðîãî íà÷í¼òñÿ âûïîëíåíèå ïðîãðàììû.Âåðí¼ìñÿ ê òåêñòó ïðîãðàììû è ðàññìîòðèì ñëåäóþùóþ ñòðî÷êó:again:PRINT"Hello"Êàê íåñëîæíî äîãàäàòüñÿ, ñëîâî again â íà÷àëå ñòðîêè ýòî åù¼ îäíàìåòêà.

Ñëîâî ¾again¿ ïî-àíãëèéñêè îçíà÷àåò ¾ñíîâà¿. Äåëî â òîì, ÷òî ñþäà íàì ïðèä¼òñÿ âåðíóòüñÿ åù¼ ÷åòûðå ðàçà, ÷òîáû â èòîãå ñëîâî Helloîêàçàëîñü íàïå÷àòàíî ïÿòü ðàç; îòñþäà è íàçâàíèå ìåòêè. Ñòîÿùåå äàëååâ ñòðîêå ñëîâî PRINT ÿâëÿåòñÿ èìåíåì ìàêðîñà , à ñòðîêà "Hello" ïàðàìåòðîì ýòîãî ìàêðîñà. Ñàì ìàêðîñ îïèñàí, êàê óæå ãîâîðèëîñü,â ôàéëå stud_io.inc. ¾Óâèäåâ¿ èìÿ ìàêðîñà è ïàðàìåòð, íàø àññåìáëåð ïîäñòàâèò âìåñòî íåãî öåëûé ðÿä êîìàíä è äèðåêòèâ, èñïîëíåíèåêîòîðûõ ïðèâåä¼ò â êîíå÷íîì èòîãå ê âûäà÷å íà ýêðàí ñòðîêè ¾Hello¿.Î÷åíü âàæíî ïîíèìàòü, ÷òî PRINT íå èìååò íèêàêîãî îòíîøåíèÿ êâîçìîæíîñòÿì öåíòðàëüíîãî ïðîöåññîðà.

Ìû óæå íåñêîëüêî ðàç óïîìèíàëè ýòîò ôàêò, íî òåì íå ìåíåå ïîâòîðèì åù¼ ðàç: PRINT ýòî íå èìÿêàêîé-ëèáî êîìàíäû ïðîöåññîðà, ïðîöåññîð êàê òàêîâîé íå óìååò íè÷åãîïå÷àòàòü. Ðàññìàòðèâàåìàÿ íàìè ñòðî÷êà ïðîãðàììû ïðåäñòàâëÿåò ñîáîéíå êîìàíäó, à äèðåêòèâó, òàêæå íàçûâàåìóþ ìàêðîâûçîâîì . Ïîâèíóÿñü ýòîé äèðåêòèâå, àññåìáëåð ñôîðìèðóåò ôðàãìåíò òåêñòà íà ÿçûêåàññåìáëåðà (îòìåòèì äëÿ íàãëÿäíîñòè, ÷òî â äàííîì ñëó÷àå ýòîò ôðàãìåíò áóäåò ñîñòîÿòü èç 23 ñòðîê â ñëó÷àå ïðèìåíåíèÿ ÎÑ Linux è èç15 ñòðî÷åê äëÿ ÎÑ FreeBSD) è ñàì æå îòòðàíñëèðóåò ýòîò ôðàãìåíò,ïîëó÷èâ ïîñëåäîâàòåëüíîñòü ìàøèííûõ èíñòðóêöèé. Ýòè èíñòðóêöèè áóäóò ñîäåðæàòü, â ÷èñëå ïðî÷åãî, è îáðàùåíèå ê îïåðàöèîííîé ñèñòåìå çàóñëóãîé âûâîäà äàííûõ (ñèñòåìíûé âûçîâ write).

Íàáîð ìàêðîñîâ, âêëþ÷àþùèé â ñåáÿ è ìàêðîñ PRINT, ââåä¼í äëÿ óäîáñòâà ðàáîòû íà ïåðâûõïîðàõ, ïîêà ìû åù¼ íå çíàåì, êàê îáðàùàòüñÿ ê îïåðàöèîííîé ñèñòåìå.28Ïîçæå ìû óçíàåì ýòî, è òîãäà ìàêðîñû, îïèñàííûå â ôàéëå stud_io.inc,ñòàíóò íàì íå íóæíû; áîëåå òîãî, ìû è ñàìè íàó÷èìñÿ ñîçäàâàòü òàêèåìàêðîñû.Âåðí¼ìñÿ ê òåêñòó íàøåãî ïðèìåðà. Ñëåäóþùàÿ ñòðî÷êà èìååò âèäPUTCHAR 10Ýòî òîæå âûçîâ ìàêðîñà, íàçûâàåìîãî PUTCHAR è ïðåäíàçíà÷åííîãî äëÿâûâîäà íà ïå÷àòü îäíîãî ñèìâîëà.  äàííîì ñëó÷àå ìû èñïîëüçóåì åãîäëÿ âûâîäà ñèìâîëà ñ êîäîì 10; ýòî ñïåöèàëüíûé ñèìâîë, îáîçíà÷àþùèéïåðåâîä ñòðîêè , òî åñòü ïðè âûâîäå ýòîãî ñèìâîëà íà ïå÷àòü êóðñîð íàýêðàíå ïåðåéä¼ò íà ñëåäóþùóþ ñòðîêó. Îáðàòèòå âíèìàíèå, ÷òî â ýòîéè ïîñëåäóþùèõ ñòðîêàõ ïðèñóòñòâóþò òîëüêî êîìàíäû è ìàêðîâûçîâû,à ìåòîê íåò.

Îíè íàì íå íóæíû, ïîñêîëüêó íè íà îäíó èç ïîñëåäóþùèõêîìàíä ìû íå ñîáèðàåìñÿ äåëàòü ïåðåõîäû, è, çíà÷èò, íàì íå íóæíà èíôîðìàöèÿ îá àäðåñàõ â ïàìÿòè, ãäå áóäóò ðàñïîëàãàòüñÿ ýòè êîìàíäû.Ñëåäóþùàÿ ñòðîêà â ïðîãðàììå òàêàÿ:inceaxÇäåñü ìû âèäèì ìàøèííóþ êîìàíäó inc, îçíà÷àþùóþ ïðèêàç óâåëè÷èòüçàäàííûé ðåãèñòð íà 1.  äàííîì ñëó÷àå óâåëè÷èâàåòñÿ ðåãèñòð EAX. Íàïîìíèì, ÷òî â ðåãèñòðå EAX ìû óñëîâèëèñü õðàíèòü èíôîðìàöèþ î òîì,ñêîëüêî ðàç óæå íàïå÷àòàíî ñëîâî ¾Hello¿. Ïîñêîëüêó âûïîëíåíèå äâóõïðåäûäóùèõ ñòðî÷åê ïðîãðàììû, ñîäåðæàùèõ âûçîâû ìàêðîñîâ PRINTè PUTCHAR, ïðèâåëî â êîíå÷íîì ñ÷¼òå êàê ðàç ê ïå÷àòè ñëîâà ¾Hello¿,ñëåäóåò îòðàçèòü ýòîò ôàêò â ðåãèñòðå, ÷òî ìû è äåëàåì.

Îòìåòèì, ÷òîìàøèííûé êîä ýòîé êîìàíäû îêàçûâàåòñÿ î÷åíü êîðîòêèì âñåãî îäèíáàéò (øåñòíàäöàòåðè÷íîå 40, äåñÿòè÷íîå 64).Äàëåå â íàøåé ïðîãðàììå èä¼ò êîìàíäà ñðàâíåíèÿ:cmpeax, 5Ìàøèííàÿ êîìàíäà ñðàâíåíèÿ äâóõ öåëûõ ÷èñåë îáîçíà÷àåòñÿ ìíåìîíèêîé cmp îò àíãëèéñêîãî ¾to compare¿ ñðàâíèâàòü.  äàííîì ñëó÷àåñðàâíèâàþòñÿ ñîäåðæèìîå ðåãèñòðà EAX è ÷èñëî 5. Ðåçóëüòàòû ñðàâíåíèÿ çàïèñûâàþòñÿ â ñïåöèàëüíûé ðåãèñòð ïðîöåññîðà, íàçûâàåìûé ðåãèñòðîì ôëàãîâ .

Ýòî ïîçâîëÿåò, íàïðèìåð, ïðîèçâåñòè óñëîâíûé ïåðåõîä â çàâèñèìîñòè îò ðåçóëüòàòîâ ïðåäøåñòâóþùåãî ñðàâíåíèÿ, ÷òî ìûâ ñëåäóþùåé ñòðî÷êå ïðîãðàììû è äåëàåì:jlagainÇäåñü jl (îò ñëîâ ¾Jump if Lower¿) ýòî ìíåìîíèêà äëÿ ìàøèííîé êîìàíäû óñëîâíîãî ïåðåõîäà, êîòîðûé âûïîëíÿåòñÿ â ñëó÷àå, åñëè ïðåäøåñòâóþùåå ñðàâíåíèå äàëî ðåçóëüòàò ¾ïåðâûé îïåðàíä ìåíüøå âòîðîãî¿,29òî åñòü, â íàøåì ñëó÷àå, åñëè ÷èñëî â ðåãèñòðå EAX îêàçàëîñü ìåíüøå,÷åì 5.  òåðìèíàõ íàøåé çàäà÷è ýòî îçíà÷àåò, ÷òî ñëîâî ¾Hello¿ áûëîíàïå÷àòàíî ìåíüøå ïÿòè ðàç è, ñòàëî áûòü, íåîáõîäèìî ïðîäîëæàòü åãîïå÷àòàòü, ÷òî è äåëàåòñÿ ïåðåõîäîì (ïåðåäà÷åé óïðàâëåíèÿ ) íà êîìàíäó, ïîìå÷åííóþ ìåòêîé again.Åñëè ðåçóëüòàò ñðàâíåíèÿ áûë ëþáûì äðóãèì, êðîìå ¾ìåíüøå¿, êîìàíäà jl íå ïðîèçâåä¼ò íèêàêèõ äåéñòâèé, è ïðîöåññîð, òàêèì îáðàçîì,ïåðåéä¼ò ê âûïîëíåíèþ ñëåäóþùåé ïî ïîðÿäêó êîìàíäû. Ýòî ïðîèçîéä¼ò â ñëó÷àå, åñëè ñëîâî ¾Hello¿ óæå áûëî íàïå÷àòàíî 5 ðàç, òàê ÷òî öèêëïîðà çàêàí÷èâàòü.

Характеристики

Тип файла
PDF-файл
Размер
1,1 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6358
Авторов
на СтудИзбе
311
Средний доход
с одного платного файла
Обучение Подробнее