Բարև Ձեզ: Խնդրում եմ օգնեք, ինչպես օգտագործեմ ֆայլերի բայտերը, որ կարողանամ փոփոխեմ նրանց մեջի բիտերը??????
Բարև Ձեզ: Խնդրում եմ օգնեք, ինչպես օգտագործեմ ֆայլերի բայտերը, որ կարողանամ փոփոխեմ նրանց մեջի բիտերը??????
Իսկ ո՞ր լեզվով ես պատրաստվում անես դա
Մարդու հետ Մարդ,Դևի հետ Դև:
C++
Նախ բուլյան հանրահաշիվ սովորի, հետո նոր ծրագրավորում, հետո http://ru.wikipedia.org/wiki/Битовые_операции
Մարդը լինելը լավ բան ա, բայց երկու ոտքի վրա կանգելը դեռ չի նշանակում որ դու մարդ ես:
Ամենակարևորը էս կյանքում մարդ լինելն ա, մնացած ամենինչը երկրորդական ա:
ԷԼ ԿՅԱՆՔՈՒՄ ԷՍ ՖՈՐՈՒՄԸ ՉԵՄ ՄՏՆԵԼՈՒ
Մարդը լինելը լավ բան ա, բայց երկու ոտքի վրա կանգելը դեռ չի նշանակում որ դու մարդ ես:
Ամենակարևորը էս կյանքում մարդ լինելն ա, մնացած ամենինչը երկրորդական ա:
ԷԼ ԿՅԱՆՔՈՒՄ ԷՍ ՖՈՐՈՒՄԸ ՉԵՄ ՄՏՆԵԼՈՒ
Բիթերի հետ աշխատելու համար ոչ մի ֆունկցիա էլ պետք չի, այ որ իմանաիր բուլյան հանրահաշիվ, բիթային գործողություններով ինչ ուզեիր կանեիր բիթերի հետ:
Լավ հենց նոր մի փոքր օրինակ գրեցի:
Ասենք առաջի բայթը ֆայլից կարդում ես а փոփոխականի մեջ ես պահում, ես a-ին մի անգամից արժեք եմ տվել 254 (11111110):
Կոդ:#include <iostream> using namespace std; void main() { char a = 254; for(int i = 7; i >= 0; i--) cout << (a >> i & 1); cout <<endl; }
Սենց էկրանին կտպի а-ի պարունակությունը բիթերով:
Բիթերը փոխելու համար
Պարունակությունը տպելը ֆունկցիա սարքեցի, հետո տպեցի а-ի պարունակությունը, կրտսեր բիթը սարքեցի 1, հետո տպեցի, 2րդ բիթը սարքեցի 0 տպեցիԿոդ:#include <iostream> using namespace std; void printBin(char &b) { for(int i = 7; i >= 0; i--) cout << (b >> i & 1); cout <<endl; } void main() { char a = 6; printBin(a); a |= 1; printBin(a); a &= 253; printBin(a); }
00000110
00000111
00000101
Press any key to continue . . .
Տենց ցանկցած բիթի պարունակություն կարամ փոփոխեմ, ուրիշ բան պետք չի, մենակ բուլյան հանրահաշիվ + ծրագրավորում, եթե ասում ես դրանք գիտես, բա ինչի սենց հասարակ բան չես կարում գրես?
Մարդը լինելը լավ բան ա, բայց երկու ոտքի վրա կանգելը դեռ չի նշանակում որ դու մարդ ես:
Ամենակարևորը էս կյանքում մարդ լինելն ա, մնացած ամենինչը երկրորդական ա:
ԷԼ ԿՅԱՆՔՈՒՄ ԷՍ ՖՈՐՈՒՄԸ ՉԵՄ ՄՏՆԵԼՈՒ
Եթե ուզում ես ինչ-որ a բայթի i-րդ բիտը փոխել.
1) դարձնել 1
2) դարձնել 0Կոդ:a |= (1<<i);
3) switch անելԿոդ:a &= ~(1<<i);
Էսքանը պիտի որ հերիքի:Կոդ:a ^= (1<<i);
Ծրագրավորման լեզվի ամենակարևոր մասը նրա անունն է: Լեզուն հաջողություն չի ունենա առանց լավ անվանման: Ես վերջերս մի շատ լավ անուն եմ հորինել և հիմա փնտրում եմ հարմար լեզու:
Դոնալդ Է. Կնուտ
_DEATH_ (18.04.2010)
Մարդը լինելը լավ բան ա, բայց երկու ոտքի վրա կանգելը դեռ չի նշանակում որ դու մարդ ես:
Ամենակարևորը էս կյանքում մարդ լինելն ա, մնացած ամենինչը երկրորդական ա:
ԷԼ ԿՅԱՆՔՈՒՄ ԷՍ ՖՈՐՈՒՄԸ ՉԵՄ ՄՏՆԵԼՈՒ
Միքո (18.04.2010)
ետ քո ասած հասարակ բաները հլը 3 տարի առաջ էի գրում, կարողա հարցս լավ չեմ ձևակերպել դրա համար ուրիշ պատասխաններ են հնչում, կոնկրետ օրինակի վրա ասեմ, պիտի ասենք նկարը առանձնացնեմ բայտերի ու իրանց հետ գործողություններ անեմ, ետ գործողություններ անելը գիտեմ այ բայց թե ոնց եմ նկարի ամեն բայթին դիմելու այ ետ մեկը չգիտեմ:
Եթե ի նկատի ունես կոկրետ նկարները, կախված ա նկարի տեսակից (եթե ֆայլից ես կարդում), բայց վերջում պիտի ստանաս միաչափ կամ երկչափ զանգված, որը սովորաբար պարունակում ա 4-բայթանոց պիքսելներ, որոնց արժեքները կարող ես փոխել քո իմացած ձևերով: Իսկ եթե կոնկրետ նկարներ ի նկատի չունես, ուրեմն ես չեմ հասկանում` ինչ ես ուզում: Մի հատ լավ բացատրի կոնկրետ որ մասը չի ստացվում:
Ծրագրավորման լեզվի ամենակարևոր մասը նրա անունն է: Լեզուն հաջողություն չի ունենա առանց լավ անվանման: Ես վերջերս մի շատ լավ անուն եմ հորինել և հիմա փնտրում եմ հարմար լեզու:
Դոնալդ Է. Կնուտ
Սկիզբը հարցնում ես ոնց բիթերը փոփոխեմ, պատասխանում ենք, ասում "ետ քո ասած հասարակ բաները հլը 3 տարի առաջ էի գրում", հետո լրիվ ուրիշ հարց ես տալի, կրուտիտն էլ յանի հարցդ ձևակերպել չես կարում: Հիմա էլ վաբշե անկապ հարց ես տվել, նկարի բայթը որն ա?
Գոյություն ունեն հարուրավոր նկարի տեսակներ, լրիվ տարբեր կառուցվածքներով, օրինակ մեկը (bmp), 24 բիթանոցի դեպքում ուղակի հեդեռից բացի ամեն պիքսելի համար 3 բայթ ա տրամադրում: Մեկը մաս-մաս LZW-ով ճզմում ա (Էտ gif-ն ա), ...
Իհարկե կներես որ քո նման մասնագետին դրա մասին ասում եմ, դու երևի տենց հասարակ բաները 6 տարի առաջ ես իմացել, ֆայլ բացել, ֆայլից կարդալն էլ երևի 9 տարի առաջ ես իմացել: Հիմա էլ էնքան հասարակ բան ա, որ ալարում ես գրես:
Մարդը լինելը լավ բան ա, բայց երկու ոտքի վրա կանգելը դեռ չի նշանակում որ դու մարդ ես:
Ամենակարևորը էս կյանքում մարդ լինելն ա, մնացած ամենինչը երկրորդական ա:
ԷԼ ԿՅԱՆՔՈՒՄ ԷՍ ՖՈՐՈՒՄԸ ՉԵՄ ՄՏՆԵԼՈՒ
terev (18.04.2010)
հավանաբար դու նկատի ունես հետրյալը
ուզում ես նախ և առաջ բացես ֆայլի պարունակությունը, այնուհետև ամեն մի սիմվոլը վերածես յունիքոդի կոդի, հետո ամեն մի յունիքոդի կոդը վերածես երկուականի ու այդ երկուականի հետ անես են ինչ ուզում ես։ Հավանաբար գաղտնագրման, կամ թաքնագրման խնդիր ես լուծելու() Ուղղակի պետքա մի փոքր գուգլ քրքրես համապատասխան ֆունկցիաները գտնելու համար։
ես էդ կարող եմ ասեմ, բայց միայն շարփով , եթե ուզենաս ասա քեզ ուղարկեմ կոդը։
Այս պահին թեմայում են 1 հոգի. (0 անդամ և 1 հյուր)
Էջանիշներ