[Powered by Google Translate] [ELECTRONIC સ્થિર અવાજ] રોબ: ઠીક છે, તેથી અમે તમને હમણાં જ લાવવામાં શું CS50 સ્પેસીસ છે. અલી: રાહ જુઓ, પાછળ રાહ છે. વિભાગમાં આપનું સ્વાગત છે! રોબ: સ્વાગત વિભાગમાં! અલી: યે! રોબ: Supersection! અલી: હું અલી છું અને આ રોબ છે. ઠીક છે, હવે અમે સ્પેસીસ સમજાવવું પડશે. રોબ: તેથી અમે તમને હમણાં જ લાવવામાં શું CS50 સ્પેસીસ છે. તમે આ તમારા વિભાગોમાં ઘણો આ સત્ર ઉપયોગ કરી શકશો. મૂળભૂત રીતે, અમે પહેલાથી જ પડ્યું તમે ઉપકરણ ડાઉનલોડ કરો. અને તમે CS50 સ્પેસીસ ઓફ વેબ ઓજાર સાથે વાત ઈન્ટરફેસ તરીકે વિચાર કરી શકો છો કે અમે કેટલાક સર્વર પર ક્યાંક હોય છે. તેથી તમે આ ઈન્ટરફેસમાં તમારી કોડ સ્કોર શકે છે, અને અમે પડશે કેવી રીતે વસ્તુઓ કરવું. તમે પણ વિભાગમાં અન્ય લોકોની કોડ જોવા કરી શકો છો, અને - અલી: અને કેટલાક લોકો મળ્યા છે, તમે બાજુ પર લોકો ગપસપ કરી શકો છો. અને અમે તમામ તેમાં દેખાશે, પણ તેથી, તે આકર્ષક છે. માં આવે છે, આવે છે અને બેસી. બેઠક લે છે. રોબ: તેથી, વિભાગો છે - અલી: ના, ના, તમે ગાય્સ આવી શકો છો. રોબ: વિભાગો વધુ ઇન્ટરેક્ટિવ આ સત્ર હશે આવે છે. અલી: ઓહ, તેઓ જેવા છે - ઓહ. ઠીક છે કૂલ. તેથી જો તમે ગાય્સ માત્ર માં આવી રહ્યા છે, તો તમે આ લિંક પર જાઓ, જો હું વિચાર કરી શકે છે ત્યાં, જમણી ત્યાં. અમે ખરેખર તે લખી શકતું નથી, કારણ કે ત્યાં બોર્ડ જગ્યા નથી, પરંતુ આ લિંક અહીં, તમારા કમ્પ્યુટર્સ પર જાઓ અને તમે CS50 દાખલ કરશો જગ્યાઓ છે, જેમાં એક સરસ વસ્તુ છે. ઠીક છે. શું તમે એક સમસ્યા છે? રોબ: તેથી તમે સમસ્યાઓ શોધી શકો છો - અમે આ ક્યાંક લખી કરવાનો પ્રયત્ન કરવાની જરૂર છે. તેથી જો તમે cs50.net/psets પર જાઓ અને આ હેકર supersection છે - અને તમે એક pset ના હેકર આવૃત્તિ માં જવા માટે, સ્પષ્ટીકરણ જોવા ક્યાંક નીચે પૃષ્ઠ પર - અલી: તેથી મૂળભૂત છે, જ્યારે રોબ looking, અમે શું કરીએ શું જઈ રહ્યાં છો કલમ આજે છે ત્યાં સમસ્યાઓ એક વિભાગ છે - રોબ: - આઠ પાનું છે. અલી: - કહેવાય સમસ્યાઓ વિભાગ - પ્રશ્નો વિભાગ: Rob. અલી: માફ કરશો, પ્રશ્નો વિભાગ છે. અને તે છે અમે શું કરીએ પર જાઓ જઈ રહ્યાં છો - તે છે, આપણે શું પર આજે જાઓ વિભાગમાં જઈ રહ્યાં છો. અને અમે તેને CS50 સ્પેસીસ પર કોડ જઈ રહ્યાં છો, અને આસ્થાપૂર્વક કે કામ કરશે. અને અમે હમણાં જ તેમના મારફતે વાત કરી શકો છો. અને તમે ગાય્સ પ્રશ્નો પૂછી જ્યારે તમે લાગે છે - રોબ: તેથી આ સૌથી psets સાથે એક સામાન્ય વાત હોય રહ્યો છે. હું આ એક સાથે લાગે છે, તે કહે છે કે તમે આ પ્રશ્નો હાથથી સાઇન ન હોય પરંતુ વિચાર એ છે કે આ પ્રશ્નો pset પર મૂકવા આવે છે, અને તમે આવી શકે માટે તે પ્રશ્નો હોય વિભાગમાં જવાબ આપ્યો. અથવા જો તમે વિભાગમાં આવતી નથી, તમે તેને તમારા પોતાના પર જવાબ આપવા અથવા મેળવી શકો છો ઓફિસ કલાકો કે કંઈક અંતે મદદ કરે છે. પરંતુ આ પ્રશ્નો છે કે જે તમને સમસ્યા સેટ માટે PReP અપેક્ષા છે. અને હેકર આવૃત્તિ પર, ઘણાં બધા પ્રશ્નો માત્ર વિશે હોઈ શકે છે તમારી વર્તમાન સીએસ જ્ઞાન વિસ્તરી રહી છે. અલી: હા, ખૂબ ખૂબ. ઠીક છે, જેથી CS50 સ્પેસીસ પર દરેક છે? હાય, સાઇન થવું 1 વક્તા: અમે URL ને જોઈ શકે છે વધુ એક વખત? રોબ: અરે વાહ, આ સરળ હોઈ એકવાર તમે તમારા વિભાગોમાં ખરેખર છે નહીં, અને તમારા ટીએફ તમે પહેલાંથી URL ને માત્ર ઇમેઇલ કરી શકો છો. અલી: યે, એક બેઠક લે છે. ત્યાં બેઠકો અહીં છે. આગળના કે ખરાબ નથી. શું? તેથી, CS50 સ્પેસ, અમે ત્યાં રહ્યાં છો. શું કોઇને કોઇ પ્રશ્નો હોય તો પહેલાં અમે પ્રવેશ મેળવવા - શું? રોબ: ત્યાં પણ કોઈ પણ ઘડી નથી. [અશ્રાવ્ય] અલી: માફ કરશો. તમે તમારા fingernails ઉપયોગ કરી શકે છે? અમે એક હાઇ ટેક ખૂબ વર્ગ માટેની ઓછા ટેક ખૂબ રૂમમાં છો. ઠીક છે, સારી દરેકને પ્રકારની છે? શું કોઇને તેના વિશે હજુ પણ પ્રશ્ન હોય તો? હું પહેલા કહ્યું હતું કે, અમે પ્રશ્નો ના વિભાગ મારફત જઇ રહ્યા છીએ આ pset સ્પષ્ટીકરણો. તેથી ત્યાં માત્ર સમસ્યાઓ થોડા છે કે અમે જઈ રહ્યાં છો CS50 સ્પેસીસ માં કોડ. દરેકને સારો? ઠીક છે. ગુડ? રોબ: શું તમે લેપટોપ છે? અલી: તમે લુકાસ સાથે અટકી શકે છે. તેઓ સાચા બેઠક છે તમે આગળ. બોન્ડીંગ સમય. રોબ: તેથી, પ્રથમ સમસ્યા સાથે શરૂ? અલી: યાહ. અમે શરૂ કરી શકો છો. શું તમે મને માંગો છો - હું જઈ શકે છે. તેથી, અમે pset સ્પેક્સ પર જાઓ પડશે. ઓહ, તે શા માટે છે - રોબ: નિયંત્રણ. અલી: ઠીક છે, તેથી અમે જવાબ જવા છે આ બધી વસ્તુઓ તેમજ? રોબ: ઓહ, હા. તેથી - અલી: ઓહ, દરેક વોચ માતાનો રોબ અભિનિત શોર્ટ્સ હતી? ઠીક છે કૂલ. રોબ: અરે વાહ, હું નથી માનતો કે અમે જરૂરી તો તમને અપેક્ષિત આ વિભાગમાં આવતા પહેલાં જોયેલી, પરંતુ અમે તે અંગે ચર્ચા કરી શકો છો અગાઉથી સમસ્યાઓ છે, કારણ કે તેઓ પ્રશ્નો વસ્તુઓ વિભાગ હેઠળ છે. તેથી જો તમે તેને જોયો છે, ચિંતા ન કરશો. જે લોકો પાસે પ્રયાસ અને જવાબ આપી શકો છો. તેથી, પ્રથમ પ્રશ્ન, જે પૂર્વ પ્રોસેસર, # કેવી રીતે સમાવેશ કરે છે સંબંધિત છે? તેથી તે કોઈપણ માટે જવાબ નથી? અલી: તમે ગાય્સ તે વાત બહાર કરી શકે છે. ખાતરી કરો કે, આગળ જાઓ. 2 વક્તા: સમાવેશ # અમુક કોડ પૂર્વ લેખિત છે, અને બદલે તે નકલ કરવાનો અને તમારા કાર્યક્રમ માં પેસ્ટ, ફક્ત કહેતા દ્વારા તેને સમાવેશ થાય છે, પૂર્વ-પ્રોસેસર જાણે છે કે તે ત્યાં છે અને તે તેને ઉમેરવું જોઈએ પાછળથી અથવા તે પહેલાં જે કંઈપણ થાય છે. અલી: અરે વાહ, અદ્ભુત. સરસ. રોબ: તેથી પૂર્વ પ્રોસેસર, જ્યારે તમે ખરેખર કાર્યક્રમ સંકલન કરી રહ્યા છો આ છે પ્રથમ પગલું. સંકલન ચાર મોટી પગલાંઓ બને. તેથી પ્રોસેસર પૂર્વ પ્રથમ મોટું એક છે, અને તે આ વ્યક્તિ કે જાય છે અને દ્વારા આ હેશ પ્રતીકો બધા માટે જુએ છે. અને કોઈપણ લીટી કે જે હેશ સાથે શરૂ થાય છે, પ્રોસેસર પૂર્વ તે જુએ છે અને જુએ છે જો તે પ્રક્રિયા કરી શકો છો. તેથી # સમાવેશ થાય છે પૂર્વ પ્રોસેસર કહે છે કે અમુક cs50.h જોવા માટે ફાઇલ અને માત્ર કૉપિ કરો અને આ ફાઈલમાં તેના સમાવિષ્ટો પેસ્ટ કરો. તેથી તમે ખરેખર # કંઈપણ તમે ઇચ્છો સમાવેશ કરી શકે છે, પરંતુ મોટે ભાગે તે જ હશે ક. ફાઈલો છે. અમે # હજુ સુધી વ્યાખ્યાયિત ન મેળવેલ છે, આથી તે તો કોઈ વાંધો નથી. અલી: અરે વાહ, આપણે એક કે સારા છો. શું કોઇને કે વિશે કોઇ પ્રશ્નો હોય તો? અમે સારા? આગામી પ્રશ્ન. 3 વક્તા: ટૂંકા, ત્યાં લગભગ કંઈક હતું કેચ છે.? એટલે કે સંબંધિત અથવા તે અપ્રસ્તુત? રોબ. પ્રોસેસર પૂર્વ સાથે કેચ વિશે? 3 વક્તા: અરે વાહ, અથવા હું કંઈક કરી તેને અપ? રોબ: તેથી ટૂંકા દર્શાવે થઈ આ ફાઇલ પહેલેથી પ્રક્રિયા અને . તેને બીજી કેચ ફાઈલ માટે outputting, તેથી તમે આ ફાઈલ પહેલાથી પ્રક્રિયા કરી શકો છો - જ્યારે તમે જેમ ચલાવો, હેલ્લો બનાવવા અથવા રણકાર hello.c, તમે બધા કરી રહ્યા છે એક મોટું પગલું માં સંકલન. પરંતુ તમે તેને બાહ્ય રીતે તેની અલગ પગલાંઓ માં કરી શકો છો. તેથી પ્રથમ તમે તેને પૂર્વ પ્રક્રિયા કરી શકો છો. પછી તો પછી તમે ભેગા થઈ શકે, કમ્પાઇલ અને પછી તમે લિંક કરી શકે છે. અમે તે અન્ય ચામાં મળશે. પરંતુ પૂર્વ પ્રક્રિયા, તમે પહેલાથી પ્રક્રિયા તે પ્રકારની, અને પછી તેને જાય પ્રવેશ અન્ય કો. ફાઇલ. કારણ કે પૂર્વ પ્રક્રિયા ખરેખર કંઈપણ ફેરફાર થતો નથી. તે માત્ર નકલ અને પેસ્ટ સમૂહ છે. તમે જાતે જ તેની નકલ કરો અને પેસ્ટ કરો જાતે કરી શકે છે. અલી. અને સ્પષ્ટ કરવા માટે, ફાઈલ કો એક સી ફાઈલ છે, તેથી તે સી કોડ માં લખાયેલ છે. તેથી તે સી કોડ માંથી સી કોડ બનશે. તમે ફક્ત પાઉન્ડ સાથે રહ્યાં છો વધુ કોડ ઉમેરી રહ્યા છે. રોબ: જ્યારે તમે તેને પૂર્વ પ્રક્રિયા, તે હજુ પણ માન્ય સી ફાઈલ છે. 3 વક્તા: ઠીક છે. ગુડ પ્રશ્ન: અલી. હું જ ગમે છે. ઠીક છે, આગામી પ્રશ્ન. આ કમ્પાઈલર શું છે? કોઈપણ? હા. 4 વક્તા: તે વિધાનસભા માં કોડ પૂર્વ પ્રક્રિયા બદલે છે. અલી: પરફેક્ટ. રોબ: હા. અલી: સરસ. રોબ: તેથી કે જે કમ્પાઇલર શું ખાસ કરી છે જ્યારે અમે રણકાર ઉપયોગ કરી રહ્યાં છો. એક ખૂબ જ સામાન્ય અર્થમાં, કમ્પાઇલર એક ભાષામાં કોડ લેતી જેમ જ છે અને તેને બીજી ભાષા બની રહ્યા છે. તેથી સી - અથવા, સાથે સાથે, રણકાર કોડ લઈ રહ્યું છે કે સી માં છે અને તે વિધાનસભા માટે રૂપાંતરિત. અને તમે તમામ વિધાનસભા અંતે સમજી કરવાનો પ્રયત્ન નથી. પરંતુ તે ભાષા છે કે જે તેને દેવાનો છે માં છે. અલી: ઠીક છે. અને પછી કરવાનું એસેમ્બ્લર શું છે? કોઈપણ? 5 વક્તા: બાઈનરી [અશ્રાવ્ય] અલી: માફ કરશો, શું? 5 વક્તા: બાઈનરી [અશ્રાવ્ય] રોબ: હા. અલી: હા. તેથી એસેમ્બ્લર: - રોબ વિધાનસભા કોડ ખરેખર છે, ખરેખર તમારા કમ્પ્યુટર શું સમજી શકે બંધ, યાદ પરંતુ તે તદ્દન લખાણ સમજતું નથી કે વિધાનસભા કોડ છે. તમે તેને સીધા 1 સે અને 0s રૂપાંતર કરવાની જરૂર છે. તે સીધું ભાષાંતર પ્રક્રિયા જેવું છે. અમે હમણાં જ તમને એક ટેબલ આપી શકે છે કે જે દરેક નકશા શું વિધાનસભા સૂચના થાય છે. પરંતુ એસેમ્બ્લર માત્ર તમારા માટે છે આ ભાષાંતર કરી. તે 1 સે અને 0s માં વિધાનસભા કોડ રૂપાંતરિત છે. અલી: અને પછી, છેલ્લા એક માટે, તે એક linker છે? અને કેવી રીતે lcs50-નથી સંબંધિત છે? કોઈપણ? રોબ: આ ખૂબ સખત અને ઓછામાં ઓછા એક કમ્પાઇલર વિડિઓ સમજાવાયેલ છે. અલી: જરૂરી કોઇપણ આદેશ જોયા-lcs50 યાદ? 6 વક્તા: જ્યારે તમે બનાવવા માટે ગયા હતા. અલી: તે કરી છે. અરે વાહ, ઠંડી, ઠીક છે. ત્યાં છે કોઇ ધારી શકે છે અથવા અસ્પષ્ટ - હા જાઓ. 7 વક્તા: મને ખાતરી છે કે, નથી કારણ કે તમારી ટૂંકા ખરેખર હતી [અશ્રાવ્ય], પરંતુ તે દરેક લાઇબ્રેરી સાથે અલગ ફાઇલો કરવાનું છે અને પછી મૂકવા અંગે કશુંક એક પુસ્તકાલય બધી મળીને તેમને? રોબ: હા. તેથી જ્યારે તમે hello.c હોય, તો તે ખરેખર સરળ કાર્યક્રમ છે. તમે ખરેખર માત્ર રહ્યાં છો તેને એક વસ્તુ કરી. પરંતુ જ્યારે તમે અન્ય કાર્યક્રમો માં વિચાર - અને હું માનું ત્યારે પણ તમે તમારા કાર્યક્રમોમાં GetString, તો તમે શરૂ કરવાની જરૂર છે અન્ય ફાઇલો સમાવેશ થાય છે. તેથી CS50 પુસ્તકાલય એક જેમ કે ફાઈલ છીએ, જેમાં આપણે અમલીકરણો હોય છે GetString અને GetInt અને તે તમામ બાબતો. તેથી linker કરે છે શું છે તેની આસપાસ જાય આ બધી મારફતે શોધી ફાઇલો, જ્યાં વિધેયો વ્યાખ્યાયિત કરવામાં આવે છે જોયા, ખાતરી કરો કે બનાવે છે જ્યારે હું કૉલ GetString ક્યાંક, તે GetString જાણે અર્થ એ થાય કે તે છે આ CS50 પુસ્તકાલયમાં પર GetString. તેથી linker માત્ર આ તમામ ફાઇલો, તેમને એકસાથે smashes, અને હવે લે છે તમે એક એક્ઝેક્યુટેબલ છે. જેથી ધ્યાનમાં રાખો, જો તમે CS50 પુસ્તકાલય ઉપયોગ કરી રહ્યાં છો, તો તમે બંને જરૂર # ટોચ પર સમાવેશ થાય છે, અને પછી પણ તમારા મેક આદેશ તમને તરીકે, જણાવ્યું હતું કે, તમે-lcs50 હોય છે. જેથી તમે માત્ર એક હોઈ શકે નહિં. તેથી કે જે હમણાં જ ભવિષ્યના સંદર્ભ માટે ધ્યાનમાં રાખવા કશુંક. 8 વક્તા: તેથી દો, કહો કે ત્યાં અન્ય પુસ્તકાલય cs51.h જેવી હતી, અમે કરશે પણ વધારાની lcs51 માટે છે? રોબ છે: માત્ર કારણ આ lcs50 સંપૂર્ણપણે કામ કરે છે કારણ કે અમે તે સેટ હોય તમારા ઉપકરણો ચોક્કસ જગ્યાએ કે જેથી તે જાણે છે શું છે Lcs50-સાધનો. અમે હમણાં જ તમને એક cs50.c ફાઈલ આપી શકે છે, અને પછી તમે તેને કમ્પાઇલ, એવું કહીને કરી શકે છે રણકાર hello.c cs50.c, અને પછી તેને મૂકીને તમારા એક્ઝેક્યુટેબલ બનાવશે તે બન્ને સાથે ફાઈલો છે. તે જાણે છે કે lcs50-કેટલાક ડિરેક્ટરી કે અમે સ્પષ્ટ માં ઉપર cs50.c અર્થ થાય છે તમારા સાધનો. તેથી જો તમે cs51.c માત્ર કહેતા-lcs51 દ્વારા સ્પષ્ટ કરવા માગતા હતા, તો પછી અમે પણ તેને તે ડિરેક્ટરીમાં મુકવાની જરૂર છે જેથી તે માટે જ્યાં જાણે કરશે તે માટે જુઓ. અલી: તમારા પ્રશ્ન શું હતો? 7 વક્તા: તમે CS50 આ લિંક કેમ હોય જો - wasn't તે નકલ / પ્રથમ પગલું છે જ્યારે તમે આ પૂર્વ પ્રક્રિયા પર પેસ્ટ? અલી: શું તમે તેને લેવા માંગો છો? રોબ: શ્યોર. તેથી cs50.h ફાઈલ cs50.c સી ફાઈલ અલગ છે. શું તમે માટે વર્ગ માં પ્રોટોટાઇપ વિધેય મેળવેલ? ઠીક છે. જેથી મૂળભૂત છે, cs50.h ફાઈલ માત્ર કૉપિ કરો અને પેસ્ટ કરો રહ્યું છે - અલી: શું તમે જાણીએ છીએ સહીઓ શું છે? ઠીક છે, જેથી ઘટનાએ, જો તમે જોવા - રોબ: લેટ્સ ડોળ કરવો cs50.h ત્યાં નથી. હવે આ ફાઈલ - તમે ઓ શબ્દમાળા = GetString કરી રહ્યા છીએ. પરંતુ જ્યારે અમે કોડ આ બોલ પર મેળવેલ કર્યું છે, તો તે લાંબા વિચાર શું છે GetString છે. તે જાણે છે કે તે કાર્ય છે, કારણ કે તમે તેને બોલાવવા કરી રહ્યાં છો. પરંતુ તે ખબર નથી કે તે ખરેખર એક શબ્દમાળા પાછા માનવામાં આવે છે. આની જેમ હું જણાવ્યું હતું કે, શબ્દમાળા ઓ = GetInt, આ બાદ કોઇ પણ અર્થમાં નથી, તમે શબ્દમાળા માટે પૂર્ણાંક સાઇન ઇન કરી રહ્યા છો. પરંતુ તે જાણે છે કે GetString અર્થમાં બનાવવા નથી કરતું નથી, કારણ કે તે નહિં થાય ખબર છે કે GetString શબ્દમાળા આપે છે. તેથી cs50.h કહે આ કંઈક છે. અલી: તેથી રોબ લખી રહ્યા છે શું છે, તે રીતે એક વચન છે કે તે ચાલી રહ્યું છે આ GetString કહેવાય કાર્ય છે. રોબ: આ છે કે જે બધી cs50.h છે નકલ છે અને અહીં પેસ્ટ, તેમજ GetInt અને તે તમામ બાબતો છે. અને આ માત્ર કહે છે કે GetString શબ્દમાળા પાછા નથી. તમે જાણો છો તે કેવી રીતે હજુ સુધી અમલમાં છે, પરંતુ જ્યારે અમે આ વાક્ય વિચાર હવે, તે જાણે છે કે તે યોગ્ય રીતે શબ્દમાળા આપે છે. 9 વક્તા: તેથી જો આપણે # સમાવેશ થાય છે વસ્તુ સાથે છે અને તેની જગ્યાએ નથી સંતાપ નહોતી ફક્ત જેના માટે તે પ્રોટોટાઇપ લખ્યું હતું કે અમે ખરેખર વાપરવા માટે જવું છે? રોબ: યાહ. તેથી આપણે આ ચલાવો. 9 વક્તા: તે શું છે? તેથી, મૂળભૂત રીતે, તે CS50 માટે-l માત્ર કારણ કે આમ થશે -. રોબ: - અભિવ્યક્તિ. અલી: હા, કારણ કે જેમ તમે કહ્યું હતું કે, તે મેક ફાઈલમાં છે. રોબ: cs50.h પણ typedef શબ્દમાળાને ઘરનાં પરચૂરણ કામો * બને છે. તમે સંપૂર્ણપણે અવગણવા કે શું હવે અર્થ છે કરી શકો છો. પરંતુ તે પણ cs50.h. સમાવવામાં કંઈક છે તેથી હવે વસ્તુઓ સંપૂર્ણ દંડ કામ કર્યું હતું. તે બરાબર ચાલે છે તે જ હતો જ્યારે અમે માત્ર હતી આ # સમાવેશ થાય છે. અને તેથી સહિત cs50.h ઓવર સમાવેશ વસ્તુઓ તમને જરૂર થાય છે - જેમ, તમે આ કાર્યક્રમ માં GetInt ઉપયોગ નથી, પણ તે તો કોઈ વાંધો નથી. તે માત્ર તેને અવગણો પડશે. અલી: અને પછી જ્યારે તમે અહીં ઉપર-lcs50 કરવું અને જમણી અહીં, શું ચાલી રહ્યું છે પર છે કે તે વાસ્તવિક implementable કોડ રહી છે. તેથી કે જ્યાં તે ખરેખર છે, આમ - GetString માટે કોડ લખ્યું. તેથી તે માત્ર એક હવે વચન નથી. તે વાસ્તવમાં પસાર થઇ છે અને શબ્દમાળા અને તે તમામ સામગ્રી લેતી. અર્થમાં બનાવીએ? પ્રશ્નો? અધિકાર છે. કૂલ દાળો. રોબ: હવે આપણે વાસ્તવિક કોડ ખસેડી શકો છો. અલી: ઠીક છે. તેથી અહીં પ્રથમ સમસ્યા છે. તેથી તે કહે છે કે કાર્યક્રમ કે જે લોઅરકેસ માટે વપરાશકર્તા પૂછે લખી અક્ષર અને પછી તેને bitwise ઉપયોગ કર્યા વગર મોટા ફેરવે છે કામગીરી તરીકે નમૂના નીચે આઉટપુટ દીઠ. આમ તમે જોઈ શકે છે, તો તમે /. A.out સાથે કાર્યક્રમ ચલાવો, અને પછી તમે છો માટે લોઅરકેસ માં મૂકી જવાનું, અને પછી તમારા કાર્યક્રમ બહાર મૂડી આપવી જોઇએ એ તો તમે ગાય્સ બધા શા માટે નથી તે નથી CS50 સ્પેસીસ પર શોટ આપી? તેથી તમે ગાય્સ બધા અહીં જઈ શકો છો. અને તમે અહીં તમામ કોડ કાઢી શકો છો. અને પછી તમે આગળ વધો અને આ વસ્તુ કોડિંગ શરૂ કરી શકો છો. રોબ: તમે કદાચ GetChar, કે વાપરવા માંગો પડશે આ CS50 પુસ્તકાલય પણ સામેલ છે. અલી: હું માનું તે વધુ સારું છે જો તમે ઉપરની ભાગ બચાવી શકે છે. જેથી તમે માત્ર મધ્યમાં સામગ્રી બદલી શકો છો. આગળ વધો અને કામ કરે છે. એકબીજા સાથે કામ મુક્ત લાગે છે. રોબ: અને તમે પ્રશ્નો પૂછી જો તમે કરી શકો છો - 10 વક્તા: એક bitwise કામગીરી શું છે? રોબ: તેથી, આ સમસ્યા માટે કે અવગણો. અલી: જો તમે તે જાણતા નથી, કે સારી છે. રોબ: અમે તે પછીની સમસ્યા ઉપયોગ જઈ રહ્યાં છો. પરંતુ જો તમે જાણતા નથી એક bitwise ઓપરેટર શું છે, કે દંડ છે. 10 વક્તા: તે ASCII કોડ દેવાનો જેમ કે છે? અલી: નંબર રોબ: નંબર તમે આ સમસ્યા માટે આ કરી શકે. 10 વક્તા: કે જે તમને કેવી રીતે કરવું? તેથી ફક્ત જો હું ક્યાંક લખી હતી - અલી: કે સાથે લખી કંઈક. રોબ: હું કરી શકે આ માં ફક્ત પ્રકાર પ્રકારની. અલી: ટોચ પર બાંધો. રોબ: ઓહ, હું માઇકને પર બેઠી છું. તેથી, અમે વ્યાખ્યાન માં જોયું કે મૂડી માટે ASCII કિંમત એ 65 છે. અને મૂડી બી 66 પ્રયત્ન કરશે, અને એમ. તેથી તમે 'એ' શાબ્દિક શકો છો 65 નંબર થાય છે. જેમ, આ 65 કિંમત છે. 'એ' - હું પૂર્ણાંક એક્સ = 100 કંઈક કરી શકો છો. અને હવે એક્સ કિંમત હશે 100 - 65. અલી: તમે કે ચલાવો અને દર્શાવે છે કે શકે છે. ઓહ. કદાચ નથી કશો વાંધો નહીં. રોબ: હું તેને છાપી હતી. 10 વક્તા: તમે તેને કેવી રીતે બંધ કરવું અક્ષર પર પાછા? અલી: તેથી જો તમે don't - તમે તેને ઘરનાં પરચૂરણ કામો એક પ્રયત્ન કરવા માટે દબાણ સમકક્ષ. રોબ: તેથી ત્યાં એક છે - ચાર રચે છે અને પૂર્ણાંક વચ્ચે તફાવત કદની બાબતમાં માત્ર છે. તેથી પૂર્ણાંક માટે વસ્તુઓ પ્રતિનિધિત્વ અપ કરવાનો પ્રયત્ન થાય છે માટે, પસંદ, અબજ ચાર. એ ઘરનાં પરચૂરણ કામો માત્ર છે વસ્તુઓ 255 સુધી પ્રતિનિધિત્વ કરવાનો. પરંતુ તેમની વચ્ચે કોઈ તફાવત આ કરતાં અન્ય છે. તેથી તમે કેચ = 65 ઘરનાં પરચૂરણ કામો કહેવું કરી શકો છો. જણાવ્યું છે કે ઘરનાં પરચૂરણ કામો કેચ સમકક્ષ 'એ' માટે સમકક્ષ છે. અલી: ઓહ, નો. વાસ્તવમાં તે વસ્તુઓ સાચવી નથી. રોબ: ના, તો તમે તે નથી કરી શકો છો. અલી: તે માત્ર છે - [GROANS] રોબ: ઠીક છે, જેથી અલી માત્ર લખ્યું હતું કે કયા કાર્યક્રમ જે પ્રથમ 100 છાપે હતી - પૂર્ણાંક તરીકે 'એ', જે 35 હતી અમે અપેક્ષા, 100 બાદ તે ASCII કારણ કે એક બજારમૂલ્ય 65 છે. ત્યાર બાદ તેણી છપાયેલ% C, જે તે ચાર રચે તરીકે અર્થઘટન અર્થ છે મદદથી. 100 તેથી - એક 35 છે. એક પાત્ર તરીકે કે ઈન્ટરપ્રીટ કરવા માટે હેશ પ્રતીક બને છે. જો તમે asciitable.com અથવા જે જોવા, તમે જોશો કે 35 છે હેશ પ્રતીક. અલી: ઠીક છે, આ સમસ્યા અંગે કોઇ અન્ય સ્પષ્ટિકરણ? ઠીક છે, તમે ગાય્સ આગળ વધીશું અને તે પછી કરી શકો છો. પ્રશ્નો પૂછો અથવા એકબીજા સાથે વાત નિઃસંકોચ. અથવા જો તમે પહેલેથી જ પૂર્ણ કરી લો, તમે આરામ કરી શકો છો. LUCAS: તેઓ જ વર્ગ છે, જેથી તમામ લોઅરકેસ અક્ષરો અને છો પણ મોટા ક્રમમાં પણ છે, કારણ કે તે માટે ઉપયોગી કશુંક સમસ્યા. અલી: ગુડ બિંદુ, લુકાસ. તેથી, તમે ગાય્સ તમામ નહોતી કે શું? 11 વક્તા: હા. કે તમે કેવી રીતે કરવું તે યોગ્ય? અલી: અધિકાર. રોબ: યાહ. 11 વક્તા: [અશ્રાવ્ય] અલી: અધિકાર બધા. રોબ: પ્રશ્ન શું પુછે છે? જસ્ટ કન્વર્ટ કરવા માટે - અલી છે: અપરકેસ માટે લોઅરકેસ કન્વર્ટ કરો. આ તે છે. રોબ: ઠીક છે. અલી: અમે તે લખવા જોઇએ? હું માનું અમે અંતે બીજાના જોવા મળશે. રોબ: તેથી જેઓ અટકી શકે, માટે માર્ગ - જો મને ઘરનાં પરચૂરણ કામો કો હોય છે, અને આપણે કહેવું તે અક્ષર બને ડી તેથી હવે હું કેવી રીતે આકૃતિ મૂળાક્ષર સી પત્ર શું છે? ડી નથી પરંતુ, હું તેનો અર્થ, ડી માટે મૂળાક્ષરના ચોથા પત્ર બને છે. અને જો આપણે 0 થી ગણતરી શરૂ કરવા માટે, પછી તે મૂળાક્ષર ત્રીજા પત્ર છે. તેથી જો એક 0 છે, બી 1, સી 2 એ 3 ડી છે, હું કેવી રીતે પૂર્ણાંક સ્થિતિ આકૃતિ કરી શકો છો - મૂળાક્ષરમાંથી સી સ્થિતિ શું છે? શું કોઇને કોઇ વિચારો હશે? અલી: મને લાગે છે કે તેઓ તમામ કોડિંગ કરી રહ્યાં છો. રોબ: શું પ્રથમ વિશે શું? 12 વક્તા: તેથી ગમે એ છે, પ્રથમ સબ્ટ્રેક્ટ? રોબ: યાહ. અલી: અરે વાહ, અદ્ભુત. તેથી તમે મૂડી ડી કરી શકે - ઓહ, માફ કરશો. તમે અક્ષર લો અને તમે પ્રથમ એક સબ્ટ્રેક્ટ છે, તમે જણાવ્યું હતું. રોબ: તેથી જો ડી 68 કંઈક છે, અને અમે એ, સબ્ટ્રેક્ટ જે 65 છે, તો પછી અમે વિચાર 3, અમને જણાવ્યાં કે ડી મૂળાક્ષરમાંથી ત્રીજા પત્ર છે 0 થી શરુ થતા હોય. તેથી કે જે તમને વાપરી શકો છો. હવે અમે મૂળાક્ષર શું દ્રષ્ટિએ, પત્ર ખબર મૂડી પત્રો, અથવા - અમે નાના અક્ષરો વડે મિશ્રિત માટે તે જ વસ્તુ કરવા માટે શું કરી શકે છે આકૃતિ સ્થિતિ અમે સાઇન છો લોઅરકેસ અને અમે ઉપયોગ કરી શકો છો કે પછી કન્વર્ટ કરવા માટે કે ઉપયોગ કરીને મોટા માટે ખૂબ સમાન વિચાર. સૂચનો માટે કહો? અલી: તમે ગાય્સ શું - રાહ, મને ખબર નથી જ્યાં સુધી તમે કેવી રીતે ગાય્સ છે. શું તમે પૂર્ણ મોટા ભાગના, તો તમે હજુ પણ કામ કરી રહ્યા છે, તો તમે અટવાઇ જાય? તમે ગાય્સ બહાર પોકાર કરી શકો છો - અટકી. એક વ્યક્તિ અટકી છે. સરસ. હું ભરાઇ ગયેલો પણ કરતા હોય છે. 13 વક્તા: હું પૂર્ણ છું. અલી: તમે કરી રહ્યાં છો? ઠીક છે. થઈ ગયું. 13 વક્તા: [અશ્રાવ્ય] અલી: યાહ કૂલ. શું તમે ચકાસણી કે તે લોઅરકેસ ફોર્મ છે? ઠીક છે કૂલ. જ્યાં અન્ય લોકો છે? શું આ સંકેત તમે તમારી જાતને અલગ ચોંટતા માટે, મદદ? 14 વક્તા: જવાબ નથી ખરેખર પરંતુ માત્ર કારણ કે, મને ખબર નથી, હું નથી તે હજુ સુધી પાચન. અલી: ઠીક કૂલ. શું તમે પ્રયાસ કરવા માંગો છો - અથવા તમે જાઓ અને વાત કરવા માંગો છો? રોબ: હું કહેવા જવાનો હતો છે શું - તેથી આ મદદથી. શું તમે સમજી અમે કેવી રીતે મેળવી મૂળાક્ષર સ્થિતિ શું આ પત્રમાં છે? 14 વક્તા: ઠીક છે, તેથી જ્યારે તમે એક અવતરણ વસ્તુઓ મૂકી કે જે નંબર આપે છે? રોબ: હા. તે ASCII કિંમત તેને રજૂ કરે છે અનુવાદિત કરવામાં આવશે. તો તમે તે ASCII ટેબલ અથવા તે ગમે પર જાઓ કરવા માંગો છો? અલી: જસ્ટ આ એક? રોબ: હા. તેથી જ્યારે તમે આ પ્રતીકો કોઈપણ મૂકવા માટે, ઘણાં અવગણીને - અલી: [અશ્રાવ્ય] રોબ: ઓહ, કર્સર મદદથી. અલી: યાહ. કે આકર્ષક હતું. રોબ: તેથી, ડાબી, જે ખાસ પ્રતીકો છે આ મુદ્દાઓ અવગણીને - જો તમે એક જ અવતરણચિહ્નો આ પ્રતીકો કોઈપણ મૂકી, પછી તે થશે ડાબી પર આ કિંમત માટે અનુવાદ. અલી: આ તે માટે રેખાંશ નંબર છે. તે 65, બી 66 સાથે એક મેચ જેવું છે, અને તમે નોટિસ કરીશું કે તેઓ તમામ છો મૂળાક્ષર ક્રમ છે, કે જે તફાવત બનાવે છે. તેથી, તરીકે રોબ કહે છે, તે પહેલાં, તે કોડ માં, અમે ના અંતર ગણતરી કરવામાં આવી હતી પ્રથમ પત્ર, દીઠ સે. અને તે જ હોઈ શકે છે, પછી ભલે તે અપરકેસ અથવા લોઅરકેસ કરીશું. રોબ: તેથી જ્યારે અમે 65 એ, ઓછા ડી, 68 હતી, અમે 3 મેળવો. કારણ કે ડી મૂળાક્ષરમાંથી માં ત્રણ સ્થાનો છે. અલી: તેથી તે પછી તમે કેવી રીતે અનુવાદિત છે કે ઉપર થોડું ડી શોધવા માટે બનાવવા માટે છે? રોબ: યાહ. તેથી જો હું 3 હવે, હું જાણું છું કે હું જે ત્રણ અક્ષરો જવા માંગો છો - અમે નાના જઈને કરી હવે થાય છે, પરંતુ આપણે કહેવું કે હું ત્રણ જવા માંગો છો વસ્તુઓના લોઅરકેસ બાજુ માં પોઝિશન્સ. કેવી રીતે હું આ કરી શકે? મને ખબર છે કે એક 97 છે લોઅરકેસ. કેવી રીતે હું લોઅરકેસ અક્ષરો માં નથી ત્રણ સ્થાનો શોધવા? 15 વક્તા: હું એક પ્રશ્ન ખરેખર હોય છે. અલી: અરે વાહ, આગળ જાઓ. 15 વક્તા: તેથી આ માટે, તે ખરેખર જો હું આ સ્થિતિ જાણવા વાંધો નથી, ગમે, હું આ ટેબલ જરૂર નથી. રોબ: ના. તમે આ નંબરો કોઈપણ ઉપયોગ ક્યારેય જરૂર રહેશે નહીં. અને આ તમારી કાર્યક્રમો એક મહત્વપૂર્ણ બિંદુ છે તમે ક્યારેય હાર્ડ જોઈએ કે આ સ્થિરાંકો કોઈપણ કોડ. 'એ' નો ઉપયોગ કરો. 65 અથવા 97 ક્યારેય ઉપયોગ કરે છે. અલી: આ જાદુ નંબરો કહેવાય છે, અને તેઓ ખરેખર ગૂંચવણમાં છીએ. જેમ કે, જ્યારે તમે એક કોડ ડીબગ કરી રહ્યાં છો, તમે યાદ નથી તેવા તમે તેમને માટે વપરાય છે. અને અમને તમારો કોડ વર્ગીકરણ માટે, અમે ખરેખર ખબર નહિ શું તમે તેમના માટે ઉપયોગ કરી રહ્યાં છો. તેથી તે વધુ સારું છે, જો તમે વાસ્તવમાં તે અક્ષરો ઉપયોગ જેથી તે બનાવે છે વધુ લોકોને સમજણ. ઠીક છે, કોઈ અન્ય પ્રશ્નો છે? વધુ લોકોને થાય છે, અથવા - હું માનું અમે તપાસ કરી શકે છે. તે ખૂબ જ ડરતાં કે તમે લોકોને કોડ જોઈ શકો છો. રોબ: યાહ. અમે તે અહીં નથી. અમે લોકો નામો નહિં જાણતા હોય, તો ક્યાં તો નથી. અલી: ઓહ હા, સાથે સાથે તે વધુ સારી રીતે બનાવે છે, તેથી અમે વધુ unbiased હશો ને બદલે માત્ર રેન્ડમ કોઈને ચૂંટતા. ચિંતા કરશો નહીં. મેં તે શું કરશે. ક્યારેય મન - જો તમે લગભગ રેન્ડમ વસ્તુઓ હોય છે. ઠીક છે. લોકો કેવી રીતે કરી રહ્યા છો? 17 વક્તા: તેથી નવમી રેખા બહાર, એક અક્ષર છાપો જોઈએ? રોબ: હા. અલી: યાહ. તેથી જો તમે જાઓ - રોબ: ઓહ, કે નથી કરી શકો છો. અલી: તમે જોશો કે તે હેશ પ્રતીક મુદ્રિત. 17 વક્તા: ઓહ, ઠીક છે. રોબ: હું માનું બીજી રીતે તમે વસ્તુઓ જોવા શકે છે અમે બે છાપવા કરી રહ્યાં છો અક્ષરો. એક પ્રથમ અમે છાપવા રહ્યાં છો તે અક્ષર એ છે આગામી એક અમે છાપવા કરી રહ્યાં છો 65 માત્ર છે. તે કદાચ આ માટે મને અંતે કિકિયારી પડશે. તેથી જો આપણે ફક્ત આ ચલાવો, તો તમારે ધ્યાન પડશે કે તે એક વાર બંને છાપે છે. કારણ કે અમે તે જ વસ્તુ કહીએ છીએ. અમે તેને કહીએ છીએ એ પત્ર એ છાપો અને પછી અમે તેને છાપી માટે પૂછી રહ્યાં છો તે 65 નંબર એક અક્ષર છે, જે આ જ વસ્તુ છે અર્થઘટન. અલી: શું તમે કહી કંઈક છે? ઓહ, માત્ર મજાક કરું છું, માફ કરશો. બધા હક, લોકો કેવી રીતે છે - રોબ: અમે માત્ર તે લઈ જવામાં કરી શકો છો. અલી: ઠીક છે, તેથી તમે કેવી રીતે શરૂ કરું? કોઈપણ? સંકેત તરીકે, અમે typers ના લોકો પાસેથી કંઈક મેળવી છે. 18 વક્તા: [અશ્રાવ્ય] અલી: ઓહ હા, પ્રોમ્પ્ટ સંપૂર્ણ. તેથી અમે લખો કરીશું - અમે શું લખો છો? કોઈપણ? અથવા હું હમણાં જ તે લખો જોઈએ? - શું આપણે વાસ્તવમાં લખીને રોબ: શ્યોર. અલી: તેથી અમે તેને પૂછવા printf લખો કરીશું, જેથી અમે પ્રયત્ન કરી શકો છો ગમે તો, મને એક અક્ષર આપે છે. ઠીક છે, અને તે પછી શું? તે શા માટે કરી છે? રોબ: મને ખબર નથી. અલી: ઠીક છે. તેથી હવે અમે તેમને કહેવાની કરી રહ્યાં છો અમને અક્ષર આપે છે. પરંતુ તે પછી તમે ખરેખર કેવી રીતે નથી કે પાત્ર મળી શકે? 19 વક્તા: ઉપયોગની GetString. અલી: GetString? GetChar? ઠીક છે, તેથી શું શબ્દમાળા અને ઘરનાં પરચૂરણ કામો વચ્ચે તફાવત છે? 19 વક્તા: સ્ટ્રીંગ્સ શ્રેણીબદ્ધ અક્ષરો ઝાકઝમાળ જેવા હોય છે. અલી: સરસ, હા. જેથી આ સમસ્યા છે, અમે માત્ર એક સમયે એક અક્ષર ધ્યાનમાં જરૂર છે, તેથી અમે માત્ર કે દાખલા તરીકે GetChar કરવા જઇ રહ્યા છો. રોબ: અમે કાર્ય અમલમાં જો આપણે ઇચ્છતા કે જે સમગ્ર શબ્દમાળા લીધો શકે અને શબ્દમાળા પર ગયા અને મોટા અને તમામ લોઅરકેસ બદલી માટે લોઅરકેસ અપરકેસ. પરંતુ અહીં, અમે માત્ર એક પાત્ર માટે કરી રહ્યા છો તમે પૂછવા. અલી: તેથી હવે અમે અક્ષર અહીં હોય છે, પરંતુ તે પછી અમે તેને સંગ્રહો જરૂર છે. તેથી તો અમે ઘરનાં પરચૂરણ કામો કેચ ઉમેરીશું - શું? 20 વક્તા: વેરિયેબલ વ્યાખ્યાયિત કરો. અલી: અરે વાહ, બરાબર. જેથી અમે અમારા પાત્ર હોય છે. રોબ: મને લાગે છે કે તમે પણ હોઈ શકે - તમે માત્ર ત્રણ જગ્યાઓ છો છે, કેમ કે તે તમને yelling છે. અલી: ઠીક છે, ઠંડી, હવે કે અમે સેટ tabbing છે, આગળ શું થશે? આગામી પગલું શું છે? રોબ: અમારા કાર્યક્રમ શું કરવું જોઈએ શું છે માટે એક નાના અક્ષર ફેરફાર અક્ષરમોટાંઅક્ષરો. તો શું હું હેશ પ્રતીક દાખલ થાય છે? એટલે કે - અલી: તે એક સારો સંકેત છે. અમે તેને ઘણો ઉપયોગ કરે છે. રોબ: ઈઝ કે માન્ય મેં એક મોટા ફોર્મ રૂપાંતરિત કરી શકે છે? 21 વક્તા: નંબર અલી: નંબર અમે તે તપાસ કરીશું. તેથી અમે એક હોઈ શકે નિવેદન જેથી ચકાસણી જો કેચ કરતા વધારે છે, જો અથવા 'લોઅરકેસ a'સમાન - તેથી જો આપણે ચાર્ટ જુઓ, તમે નોટિસ પડશે કે તે અહીં વચ્ચે હોવું જોઈએ, 97, અને લોઅરકેસ એક છે. અને આ કોઈપણ હોઈ શકે છે, અને વૃદ્ધિના આધારે તમામ માર્ગ નહીં. અને પછી ત્યાં 122 અંતે z છે. અને તે આ બે કિંમતો વચ્ચે આવતા હોય છે. એ નથી કે સૂઝ છે? રોબ: તેથી જો કેચ 97 અને 122 વચ્ચે નથી - અથવા તમે તે નંબરો ઉપયોગ ક્યારેય જરૂર જોઇએ - જો કો 'એ' અને વચ્ચે નથી 'Z,' પછી તે અમને મોટા માટે માન્ય અક્ષર નથી. અલી: તેથી કોડ સ્વરૂપ છે, અમે કહીએ છીએ કે જો કો કરતાં વધારે અથવા એક સમાન છે કેસ લોઅરકેસ - સંક્ષોભજનક જીત, કેવી રીતે છે કે જે તમને કહ્યું નહોતું? ઠીક છે, કરતાં વધારે અથવા લોઅરકેસ 'એ' ને સમાન હોય છે, અને તે માટે ઉપર હોવો જોઈએ આ લોઅરકેસ 'z.' તેથી તે કરતાં ઓછી અથવા સમાન માટે 'z' લોઅરકેસ પ્રયત્ન છે. અમે ખાતરી કરો કે તે બે વચ્ચે છે બનાવી રહ્યા છો. તો પછી અમે અમારી ખુશ કોડ સાથે ચાલુ રાખી શકો છો. શું? રોબ: તેથી હું figured અમે માત્ર પૂછવા રાખવા માંગો છો, તો અમે એક ન હોય તો શું પત્ર લોઅરકેસ. અલી: ઓહ, હું કે પરિચિત ન હતો. માફ કરશો. ઠીક છે, તેથી જો આપણે કરવા જઈ રહ્યાં છો તરીકે રોબ કહે છે, અને ખાતરી કરો કે - અમે તેમને પૂછ્યા રાખો, પછી કરી શકો છો કે અમે શું કરીશું? 22 વક્તા: [અશ્રાવ્ય] રોબ: યાહ. અમે લૂપ અમુક પ્રકારની ઉપયોગ કરવો જોઈએ. કારણ કે વપરાશકર્તા એ અમાપ જથ્થો સમયમાં અમાન્ય કંઈક દાખલ કરી શકો છો. તેથી તમે જ્યારે લૂપ વાપરી શકો છો. ડુ-જ્યારે લૂપ હેતુ - શાબ્દિક, તમારા સમગ્ર જીવનમાં ફક્ત એક જ વખત તમે ક્યારેય શું ઉપયોગ કરશે જ્યારે આંટીઓ છે જ્યારે તમે વપરાશકર્તા ઈનપુટ માટે કહીએ છીએ. તેથી હકીકત અમે વપરાશકર્તા ઈનપુટ માટે પૂછી રહ્યાં છો તે અહીં સૂચક છે કે અમે જોઈએ છે ડુ-જ્યારે લૂપ વાપરો. અને તે શા માટે છે? કારણ કે આમ-જ્યારે લૂપ હંમેશા ઓછામાં ઓછું એક વાર બને છે. તેથી જ્યારે તમે વપરાશકર્તા ઈનપુટ માટે પૂછી રહ્યાં છો તે, તમે ઇચ્છો કે ઓછામાં ઓછા એક વખત થાય છે. અને પછી જો વસ્તુઓ સફળ રહ્યા હતા, તમે જઈને રાખી શકો છો. જો નહિં, તો પાછા જાઓ અને ફરીથી પૂછો. અલી: તેથી અન્ય શબ્દોમાં, અમે કલમ કરો. અને તેથી આ તે કહેવાની છે કંઈક. તેથી printf - સ્ટેટમેન્ટ માટે, પ્રોમ્પ્ટ પર, અને પણ અક્ષર વિચાર, અથવા પ્રયાસ છાપો એક પાત્ર છે. અને પછી અમે તપાસ જો તે ખરેખર તે યોગ્ય રીતે કર્યું છે. તેથી તો અમે શરતો ઉમેરો, તો પછી અમે જ્યારે કહે છે, અને પછી અમે હોય શરતી વિધાન. રોબ: પરંતુ હવે અમે વિચાર ટ્રેન ઉલટી છે. હવે અમે મૂળ જો કૈચ આ શ્રેણી છે કહેતા હતા, તે માન્ય છે. હવે અમે તે વિપરીત અને કહે છે જો કૈચ આ શ્રેણીમાં નથી માંગો છો, અમે તો પછી માટે વસ્તુઓ ફરીથી કરવા બેકઅપ કરવાની જરૂર છે. અલી: ઓહ, હા. રોબ: તેથી જ્યારે આ સત્ય નથી, અમે પાછા જાઓ અને માંગો છો અન્ય અક્ષર માટે પૂછો. નથી દરેકને કે જુઓ છો? આ પ્રશ્નો? ઠીક છે. તેથી હવે અમે કોઈ માન્ય અક્ષર કે અમે મોટા કરી શકો છો. અલી: તેથી પછી તે uppercasing માટે આગામી પગલું? 23 વક્તા: 32 ઉમેરો. અલી: તમે ઉમેરો - માફ કરશો, શું? 23 વક્તા: તમે ફક્ત 32 ઉમેરી શકતા નથી? રોબ: તેથી હા નથી, જાદુ સંખ્યાની દ્રષ્ટિએ. તમે માત્ર એક જ ક્વોટ સામગ્રી મદદથી જોઈએ. 23 વક્તા: ઠીક છે, સારી - રોબ: પણ તમે 32 મેળવી શકો છો - અલી: તમે કેવી રીતે મેળવી તેણે 32 નંબર હું અનુમાન છે, આપણે શું કહી રહ્યાં છે. 23 વક્તા: [અશ્રાવ્ય] રોબ: તેથી અમે સંખ્યા 32 ની સાથે આવી શકે - 23 વક્તા: [અશ્રાવ્ય] રોબ: યાહ. પરંતુ જો આપણે તેને બે પગલાંઓ કરતા જઈ રહ્યાં છો તો અમે પહેલાં જ કર્યું સ્થિતિ સામગ્રી. તેથી મૂળાક્ષરો કે સી બને માં પોઝિશન કેચ બાદ લોઅરકેસ છે 'એ'. તેથી જો આપણે એક લોઅરકેસ 'ડી' દાખલ કરેલું છે, પદ થી 3 પ્રયત્ન રહ્યું છે. અને હવે અમે વસ્તુઓના મોટા વિસ્તાર વસ્તુઓ લેવા માંગો છો. તેથી હવે અમારી નવી કેચ માટે મૂડી 'એ' પ્લસ સ્થિતિમાં હોઇ રહ્યું છે. તેથી લોકો જોઈ કેવી રીતે કરે છે કે અમને લાવે - અમે નાના શ્રેણીમાંથી ખસેડીએ છીએ, ચોક્કસ ઊંડાઈ અમે તે માં હતા શ્રેણી, અને મોટા શ્રેણીમાં નીચે રહ્યું છે, અને તે દૂર સુધી જવાની તે ફરીથી છે, કે જે એ જ પાત્ર રહ્યું છે, પણ હવે uppercased. અલી: અને લોકો કે કેવી રીતે દ્વારા પણ અસમંજસની હતા માટે તેમને માત્ર 32 જણાવ્યું હતું કે, મૂળભૂત રીતે તે એક નિવેદનમાં માં આ બંને સંયુક્ત. તેથી આ લખવા માટે કહેવું તમે હમણાં જ પ્રકારની કરી શકો છો એક સમકક્ષ માર્ગ અવેજી સ્થિતિ છે, કો બાદ 'એક' અને તે અહીં મૂકો. તેથી તેમણે શું કર્યું, હું don't - ઘરનાં પરચૂરણ કામો newc = મોટા 'એ' પ્લસ કેચ બાદ 'એ' લોઅરકેસ. અને કારણ કે બીજગણિત છે, તમે તેમને ખસેડવા આસપાસ કરી શકો છો. તમે પણ કહે છે કે તમે તેને ખસેડવા આસપાસ જેથી ઘરનાં પરચૂરણ કામો newc = મોટા 'એ' કરી શકે છે બાદ 'એ' પ્લસ કો લોઅરકેસ. અને આ તો, તમે જો અમે ચાર્ટ પર જાઓ નોટિસ પડશે. અમે મોટા એ 65 છે અને 97 છે લોઅરકેસ છે. જેથી 65 - 97 -32 છે. હાય. બેઠક લે છે. ઓહ. તમે અહીં બેસીને કરી શકો છો. સરસ, ઠીક, અદ્ભુત. વિભાગમાં આપનું સ્વાગત છે. તમે ધ્યાન પડશે કે તફાવત 32 છે. જેથી જ્યાં તેમણે જે નંબર મેળવ્યો. પરંતુ તે છે, રોબ કહે નથી, શ્રેષ્ઠ કરવું તે રીતે, કારણ કે તે વિચિત્ર છે જાદુ નંબર ગૂંચવણ. રોબ: તમે મૂડી ઉપયોગ એક બાદ એક લોઅરકેસ કરીશું. તમે હમણાં જ સીધા 32 ઉપયોગ કરવો ન જોઈએ. 24 વક્તા કે કેમ છે, ફરી? તમે શા માટે તેનો ઉપયોગ 32 ન જોઈએ? અલી: જો અમે તેને આપી હતી, તે ઘરનાં પરચૂરણ કામો હશે newc -32 = + c. અને જો તમે તેને બાકીના કોઈપણ જોઈ નથી, જો આ બધા ગઇ છે, અને તમે ફક્ત આ એક વાક્ય જુઓ, પછી તમે કેવી રીતે ખબર નથી નકારાત્મક 32 શું છે? તે સ્થળ બહાર માત્ર છે. રોબ: તેથી તમારા કાર્યક્રમ દંડ સંપૂર્ણપણે કામ કરશે. તે માત્ર એક શૈલી વાત છે. કોઇકે માં જવું અને તમારો કોડ વાંચન, તેઓ 32 શું અર્થ એ નથી જેવા છો? કદાચ તેઓ don't - હું કદાચ તરત જ જે 32 થી બને નથી ખ્યાલ આવશે એક નાના અક્ષર અને એક મોટા અક્ષર વચ્ચે તફાવત હોવા છતાં, અમે આગામી સમસ્યા કે હકીકત ઉપયોગ જઈ રહ્યાં છો. 32 છે - તમે તેને 32 કહેતા ઉપર એક ટિપ્પણી મૂકો શકે વચ્ચે તફાવત છે 'એ' અને 'એક.' પરંતુ તે સમયે, 'એ' અને 'એ', અને તમે શા માટે માત્ર ઉપયોગ ન તો જરૂર નથી ટિપ્પણી. અલી: તે માત્ર તેની રીતે ઘણો ક્લીનર, શૈલી મુજબની છે. અને તેથી, કારણ કે તમે ફક્ત શરૂ કરી રહ્યાં છો પ્રોગ્રામિંગ - મન ક્યારેય - અથવા હું, કારણ કે તમે હેકર EDI છો ન ધારી. તે માત્ર એક સારો હોય રસ્તો છે - તે સારું સારું શૈલી ધરાવે છે. તેને સરળ માટે અન્ય લોકોને વાંચવા માટે છે. રોબ: તમે તે ASCII ટેબલ યાદ ક્યારેય જરૂર છે, ક્યારેય કરીશું. તમે માત્ર એક જ ક્વોટ અક્ષરો ઉપયોગ કરવાનો પ્રયત્ન કરીશું. પ્રશ્નો? અલી: સારા દરેક વ્યક્તિને? રોબ: ઠીક છે. જેથી આગામી સમસ્યા નોંધપાત્ર છે. જેથી આગામી સમસ્યા અમને પૂછે છે - અલી: આગામી સમસ્યા અમને માટે પૂછે છે તે જ વસ્તુ કરવા પરંતુ વાપરવા માટે bitwise ઓપરેટરો. રોબ: અલબત્ત, આપણે bitwise ઓપરેટરો હજુ સુધી જોઇ ન હોય. તેથી અમે હવે તે અંગે ચર્ચા કરીશું. અલી: BE ઉત્સાહિત. તેઓ સુપર મજા છો. રોબ: તેથી એક્સ વત્તા વાય બાદ, સમય વિભાજન જેવા નિયમિત ઓપરેટરો. અલી: તે આ પ્રોમ્પ્ટ માં લખો. રોબ: ત્યાં પણ%, જો તમે તેને જોઇ ન હોય, જે તમને દ્વારા ઉપયોગ કરી શકો છો પ્રતીક ટકા. પરંતુ અમે તે આ સમસ્યા માટે ઉપયોગ કરશે. અમે bitwise ઓપરેટર્સનો ઉપયોગ કરવા માંગો છો. હવે યાદ રાખો, અમે તેને એક વ્યાખ્યાન માં લાવવામાં આવ્યા હતા. મને ખાતરી છે કે જો અમે તે આગળ દ્વિસંગી ચર્ચા કરી છે નથી. યાદ પરંતુ તે દરેક એક નંબર રજૂ થાય છે - સારી બધું, - છે અને બાઈનરી માં 1 સે 0s માં રજૂ કરે છે. જેથી અર્થ એ છે કે જ્યારે હું 8 નંબર કહે, હું જાણું છું કે કે થવું જેમ, 1000. શું bitwise ઓપરેટરો અમને હોય છે આ બીટ્સ પર કામ કરવું - હોય છે આ બીટ્સ પર સીધા ચાલે છે. હવે હું લાંબા સમય સુધી આઠ દ્રષ્ટિએ વ્યવહાર છું. હું 1000 ની દ્રષ્ટિએ વ્યવહાર છું, અને હું તે સાથે વસ્તુઓ કરવા માંગો છો વ્યક્તિગત બિટ્સ. તેથી અલિ bitwise ઓપરેટરો લખ્યું છે અહીં, પણ that's - આ 8 નંબર અમે અમારા એક ઉદાહરણ સંખ્યાની તરીકે વાપરવા પડશે. અને બાઈનરી રજૂઆત 1000 છે. અમે બીજા નંબર, 5 ઉપયોગ કરીશું - ખરેખર આપણે 9 અને 5 વાપરો. અને 5 દ્વિસંગી પ્રતિનિધિત્વ 00 છે - 0101. અલી કે પર કોઈ દરેકને છે? બાઈનરી સામગ્રી? તે પ્રથમ વ્યાખ્યાન હતું? રોબ: તેથી પણ જો તમે સંપૂર્ણ ટોચ પર નથી વસ્તુઓ કેવી રૂપાંતરિત કરવી દ્વિસંગી છે, કે જે સંપૂર્ણપણે મહત્વનું આ સમસ્યા માટે નથી. અમે તેનો ઉપયોગ કરવામાં આવશે, પરંતુ તમે ઘણી તકો બહાર આકૃતિ માટે કેવી રીતે પડશે ઝડપથી દ્વિસંગી માં વસ્તુઓ કરો. તેથી 9 અને 5 વાપરી રહ્યા હોય, હવે અમે અમારા bitwise ઓપરેટરો છે. ઓહ, અને પણ, 9 અને 5, જો તે પૂર્ણાંક છે, પછી ખરેખર તે 32 બીટ છે, જેનો અર્થ છે કે અમે 0, 0, 0 0, સમય ઘણો જેવા હોય છે, ત્યારબાદ 101 ખૂબ જ અંત. કે જે હમણાં જ કારણે છે, કોઈ બાબત તમે શું પૂર્ણાંકો માં, 32 બિટ્સ. જસ્ટ કારણ કે અમે માત્ર ચાર બિટ્સ જરૂર 9 પ્રતિનિધિત્વ અર્થ એ નથી છો તો અમે નથી અપ માત્ર 0s માટે અન્ય 27 બિટ્સ મદદથી. અલી: જસ્ટ સ્પષ્ટ કરવા માટે, આ નંબરો કે જે 0 અથવા 1 એક છે એક બીટ છે. આ એક 4 બિટ્સ છે. જેથી રોબ જણાવ્યું હતું કે મશીનો તેમને 32 માં સંગ્રહે. તેથી તે પછી તેઓ 32 ક્યાંતો 0 અથવા 1 એક હશે. કૂલ? રોબ છે: bitwise ઓપરેટરો. પ્રથમ એક કે અમે સાથે કામ કરશો, ચાલો કરવું &. તેથી જો અમે 9 અને 5. તેથી અને શું કરે છે ક્રમેક્રમે છે, તે બે નંબર ની બિટ્સ સરખાવે અને જો નંબરો બંને 1 છે, તો પછી તેને 1 એક આપશે. જો એક 0 છે અને 1 અન્ય એક અથવા બંને 0s છે, પછી તે એક 0 આપે છે. જેથી તમે તેને તમારા લોજિકલ ANDs તરીકે વિચાર કરી શકો છો. જેમ તમે સાચું અને સાચી સાચી પરત કરવાની જરૂર છે, પરંતુ સાચા અને ખોટા ખોટા છે. તેથી તે જ વાત છે, પરંતુ હવે અમે તેની સાથે માત્ર બિટ્સ સાથે કામ કરીએ છીએ. અલી: તેથી જો તમે આ જોવા માટે, તમે 1 પડશે - તમે તેમને વાક્ય અપ પડશે જેથી તે 1 અને 0 હશો. શું તમે ગાય્સ લાગે છે કે હશે - શું કે મૂલ્યાંકન માટે છે? 25 વક્તા: 1. અલી: સરસ. અથવા નં. માફ કરશો. એટલે તે અર્થમાં બનાવે છે? જેથી સામૂહિક જવાબ શું છે તે ફરીથી? માફ કરશો. તેથી જો આપણે 1 અને 0 હોય, તો પછી તમે શું વિચાર છે? રોબ: તેથી તમે કેવી રીતે તમે કહી લાગે છે અને બહાર અવાજ. જો તમે બે બિટ્સ હોય, એક્સ અને વાય તમે એક્સ અને વાય 1 પ્રયત્ન કરવાની જરૂર છે તે માટે મદદ કરવા માટે સાચી માટે મૂલ્યાંકન - અથવા, જેથી માટે તે 1 થી મૂલ્યાંકન માટે. જો એક્સ અથવા વાય 0 છે, પછી તે ખોટા અથવા 0 થી મૂલ્યાંકન. LUCAS: તે સારું છે પણ યાદ રાખો કે 1 સાચું છે અને 0 ખોટું છે. તેથી જો તમે સાચા અને ખોટા હોય, તો તેને ખોટી છે. પરંતુ તે પછી, અને સાચું સત્ય, સત્ય છે. ફોલ્સ એન્ડ ફોલ્સ, ફોલ્સ. અલી: અમે સાચા અને ખોટા છે. 1 તેથી અને 0. તેથી પછી ફરી, માફ કરશો, એક વધુ સમય? 25 વક્તા: તે 0 રહેશે. યાહ કૂલ. અને પછી અમે 0 અને 1 હોય - 25 વક્તા: [અશ્રાવ્ય] અલી: યાહ. તેથી તમે હંમેશા તેમને સ્વેપ માં કરી શકો છો - પછી જો તમે 0 અને 0 છે? 4 વક્તા: 1? 0? રોબ: તેથી 0 છે. તે નથી કે બંને નંબરો માટે જ હોય ​​છે. તે છે કે બંને નંબરો માટે 1 પ્રયત્ન કરવાની જરૂર છે. અલી: તેથી બંને વાત સાચી છે તે વાત સાચી છે. જેથી 0 છે. અને પછી તમે 1 1% છે, જે હોય છે? રોબ: આ ખૂબ સારા નંબરો છે. તેઓ તમામ શક્ય હોય - અલી: સારા કામ, સંક્ષોભજનક જીત. ઠીક છે કૂલ. જેથી દરેકને નથી અર્થમાં છે? રોબ: તેથી હવે અમે કરીશ |. અને આ ખૂબ જ સમાન હોવા રહ્યું છે, પણ હવે તેના બદલે એક્સ અને વાય માટે જરૂર ક્રમમાં 1 પ્રયત્ન માટે એક મૂલ્યાંકન કરવા માટે, તેને હવે ફક્ત એક્સ અથવા વાય માટે 1 પ્રયત્ન કરવાની જરૂર છે. અલી: 1 તેથી | 0 થી મૂલ્યાંકન - CLASS: 1. અલી: સરસ. 0 | | 1 થી મૂલ્યાંકન - CLASS: 1. અલી: સરસ, અને પછી 0 | | 0 - CLASS: 0. અલી: અરે વાહ, અને 1 પછી | 1 - CLASS: 1. અલી: સરસ. જેથી બે bitwise ઓપરેટરો જેવું છે. ઓસમ. રોબ: તેથી હવે અમે ^ કરવું પડશે. અલી: અમે તેમને તમામ કરવું જોઈએ? રોબ: અરે વાહ, કારણ કે મને લાગે છે કે અમે તેનો ઉપયોગ જઈ રહ્યાં છો - તેમને બધા મદદથી. અલી: ઠીક છે. તેથી - રોબ: હું માનું અમે જરૂર નથી. અલી: તેથી ^ કામો કે તમે એક ચોક્કસ સત્ય અને એક ખોટા હોય છે. ^ અનન્ય અર્થ એ થાય કે. તેથી હવે તે નથી - જો એક્સ અને વાય બંને 1 હોય, તો તે હવે ખોટું. કે ^ વચ્ચે તફાવત છે અને | છે કે, OR તમે કરી શકો છો, જો એક્સ છે સાચું કે વાય સાચું છે, તો પછી અમે સારા છીએ. ના, ^ કહે જો એક્સ સાચું છે, વાય ખોટા જ હોવી જોઈએ, અથવા અન્ય તે વાત સાચી નથી. શું તમે એક પ્રશ્ન છે? 26 વક્તા: [અશ્રાવ્ય] અલી: યાહ. તે સમાન પ્રકારની છે. રોબ: અરે વાહ, જેથી કરીને તમે જ્યારે કે હાર્ડવેર નીચા સ્તર સામગ્રી મેળવવા, આ છે કામગીરી પ્રકારો તમારી સાથે વ્યવહાર કરી રહ્યા છો. હાર્ડવેર સ્તરે, તમે માત્ર બિટ્સ સાથે કામ કરશે. તમે નંબરો સાથે વ્યવહાર નથી. અલી: ઠીક છે, ^ માટે હોય તો, અથવા તમે 1 હોય 0 ^, શું છે કે જે મૂલ્યાંકન કરવું જોઈએ? CLASS: 1. અલી: સરસ. જો તમારી પાસે 0 ^ 1? CLASS: 1. અલી: સરસ. 0 ^ 0? સરસ. અને 1 પછી 1 ^? CLASS: 0. અલી: સરસ, અદ્ભુત. આગામી એક - રોબ: મને લાગે છે કે આ બધા માટે અમે સાથે કામ હોય છે. અમે ફક્ત આ કરીશ. આ ફક્ત એક જ વખત આપણે કરવા પડશે: - અલી રોબ: ઓહ, કે છેલ્લા સમસ્યા માટે પ્રયત્ન કરશે. 27 વક્તા: રાહ જુઓ, ફરી એક વાર? અલી: માફ કરશો, તમારો પ્રશ્ન શું હતો? 27 વક્તા: તમે એક વાર ફરી સમજાવવું કરી શકું? આ ^? 27 વક્તા: Exclus - હા. અલી: તેથી શું અનન્ય અથવા અર્થ એ છે કે ત્યાં માત્ર પ્રયત્ન છે એક સાચા અને ખોટા એક છે, તેથી એક 1 અને એક 0, વિરુદ્ધ સાથે અથવા તો, તમારી પાસે શકો છો - તેમાંના એક છે તે વાત સાચી છે, અથવા બંને સાચા તે માટે હોઇ શકે છે, સાચી માટે મૂલ્યાંકન. 27 વક્તા: તેથી 0 અને 0 ખોટા હશે. અલી: યાહ. પરંતુ જો તમે 1 છે | 1, જે સાચા માટે મૂલ્યાંકન કરશે. પરંતુ જો તમે 1 1 ^ છે, કારણ કે અમે કર્યું, કે જે ખોટા મૂલ્યાંકન. કારણ કે તે સંપૂર્ણપણે નથી, એક સાચા છે. રોબ: આ હોઈ શકે છે અથવા શકે છે, પણ શકે અને ન મદદરૂપ પરંતુ નોટિસ કે ^ છે | માત્ર લેવાનું સમાન ઓછા એન્ડ. અને તમે ખરેખર તે આ રીતે વિચાર કરી શકો છો. ^ માત્ર બધું છે મળીને ORing પરંતુ બિટ્સ કોઇ લેવા જ્યાં બંને સાચા હતા. તેથી અને બધું જ્યાં બંને સાચા હતા આપે છે. | બધું જ્યાં એક અથવા બંને સાચા હતા આપે છે. જેથી આઉટ બાદબાકી | તમે ^ આપે છે. અલી: કોઈપણ પ્રશ્ન છે? આ ઘણી માહિતી હતી. સારા દરેક વ્યક્તિને? રોબ: અમે આગામી મુદ્દાઓ પર આગામી સમસ્યા માટે જઈ શકે છે સ્લેશ, સમય શું છે? તેઓ આ આગામી સમસ્યા સુધી જરૂર નથી. અલી: મને લાગે છે કે તે આ એક હતી. રોબ: તે નથી. અલી: તમને ખાતરી છે? રોબ: હા, હું હકારાત્મક છું. અલી: અમે આગામી સમસ્યા કરી કેમ ન શરૂ કરી શકું? સમસ્યા એ છે, ફરી, તે માટે મોટા લોઅરકેસ થી બદલવા માટે, અને આ માટે bitwise ઓપરેટર્સનો ઉપયોગ સમય. રોબ: તેથી અમે કરશે - આપણે ના 'એ', મૂડી 'એ' બાઈનરી રજૂઆત સાથે શરૂ કરવા માટે, જે 65 છે. તેથી દ્વિસંગી માં - જેથી 'એ' = 65 છે, કે જે બાઈનરી માં =, - હું 0s સંખ્યા અપ વાસણ કરવા જઇ રહ્યો છું - કે. અલી: તેથી કરે છે કે દરેકને અર્થમાં છે? તેથી, 1, કોઈ 2s, કોઈ 4s, કોઈ 8, કોઈ - આ બોલ પર કોઈ 16s, કોઈ 32s, અને તે પછી 64 એક. રોબ: અરે વાહ, મને લાગે છે કે એક પણ અનેક 0s છે. અલી: માફ કરશો. રોબ: ઠીક છે, તેથી અમે 64 સેટ હોય છે, અને અમે 1 સેટ હોય છે, અને તે સંયુક્ત સાથે મળીને, અમે 65 મેળવો. અલી: કૂલ દાળો? રોબ: તેથી હવે, 'a'લોઅરકેસ - 97 નોટિસ - 97 અને 65 ની વચ્ચે તફાવત શું છે? 28 વક્તા: 32. રોબ: યાહ. તેથી તે 32 છે, જે તેના પોતાના બીટ છે તેથી, જે 110001 જ હશે. અને આ માટે તમામ શક્ય અક્ષરો માટે સાચી હોવી રહ્યું છે. તેથી જો આપણે 'ડી', જે 68 પ્રયત્ન રહ્યું છે લાગે છે, કે જે 1000011 જ હશે. અને પછી લોઅરકેસ 'ડી' માટે 68 વત્તા 32, કે જે 100 છે જે છે રહ્યું છે આ જ વસ્તુ છે કે જે આ હતી, માત્ર ફ્લિપિંગ જઈને 32 ફરીથી તેથી, 1100011. તેથી એક મોટા અને નાના અક્ષર વચ્ચે તફાવત માત્ર ફ્લિપિંગ છે સ્થિતિ 32-bit કે. 29 વક્તા: તે 1000100 નથી? રોબ: પ્રતીક્ષા, તે 100 છે - હું ખોટું કર્યું. આ સાચું નથી. હું વિચારતી હતી કે તે 3 એક તફાવત હતો, તેથી તે પછી મેં હમણાં જ અટકી અંતે 3 દ્વિસંગી. આ અધિકાર પ્રયત્ન કરીશું. અલી: આભાર. કે પોઇન્ટ આઉટ માટે સારી. કે તીક્ષ્ણ હતા. બધા હક છે, કે જે લોકો સ્પષ્ટ? રોબ છે: મોટા અને નાના આવૃત્તિ વચ્ચે તફાવત છે હંમેશા માત્ર 32 જ હશે, અને તેથી તે હંમેશા એક બીટ જ હશે કે બંને વચ્ચે ફેરફાર ઘસવું જરૂરી છે. અલી: જેથી કિસ્સામાં, મૂડી A અને વચ્ચે તફાવત જાણીને આ લોઅરકેસ એક સારી બાબત છે. , તમારો કોડ નથી પરંતુ સરળ ઓછામાં ઓછા, તે સારી છે. તેથી તમે ગાય્સ આગળ વધો અને કોડ શકો છો કે સ્પેસીસ હવે. અથવા આપણે માત્ર ચર્ચા કરવી જોઈએ? રોબ: અમે ફક્ત ચર્ચા કરી શકો છો. મને ખબર નથી. તમે ગાય્સ પ્રયાસ કરી શકો છો. ઘડીભર પોતાની જાતને નો સમાવેશ વાત કરો. અમે તમને તે કોડ તક આપીશું. [અવાજો INTERPOSING] અલી: - સરસ છે 30 વક્તા: આ હેકર કોમેડી જેવી છે. અલી: અરે વાહ, અમે માત્ર સમાચાર કહેવાની કરી રહ્યાં છો, તે પસાર થઇ. રોબ: અને અમે પાછા આવ્યા. અલી: તે વિચિત્ર પ્રકારની છે. હું જેમ અમે CS50 સમાચાર સ્ટેશન હોવા જોઈએ લાગે છે અને અમે કરી શકે વાસ્તવમાં આ જેવા બેસો. હેકર ન્યૂઝ: રોબ. અલી: હેકર 50 ન્યૂઝ. અલી: કોઈપણ પ્રશ્નો પૂછી જો તમે ભેળસેળ કરી રહ્યાં છો સંકોચ ન અનુભવો. રોબ: કોઇપણ અટકી છે? અલી: અરે વાહ, કે જે સારી વાત છે. અલી: રાહ જુઓ, તમે તમારા ખુરશી માં અટવાઇ જાય? ઓહ. હું થોડો સંબંધિત હતી. રોબ: કારણ કે હું હમણાં જ લાગ્યું કે અમે માંગો છો જવું છે અન્ય bitwise ઓપરેટર. હવે, ચાલો માત્ર લોઅરકેસ મોટા રૂપાંતરિત કરો. અલી: માફ કરશો, દરેકને કે જાહેરાત વિચાર કરી? અમે મોટા સુધી જવું લોઅરકેસ રહ્યા છીએ. રોબ: પછી અમે નાના ચર્ચા કરવા માટે કે પછી તરત જ મોટા પડશે. ઓહ, નો. અમે આ એક ભૂલ, હું માનું છું, છે, કે જે અમે પ્રયત્ન કર્યો છે માટે ક્યારેય હોય છે. જે માત્ર કે ઘરનાં પરચૂરણ કામો કરવા માટે c લૂપની બહાર જાહેર કરવાની જરૂર છે, કારણ કે તેના અવકાશ લૂપમાં પ્રતિબંધિત છે. 32 વક્તા: આ કિસ્સામાં, તે ખોટું કરવા માટે નંબર ઉપયોગ કરો છો? રોબ: EH, તો તમે જરૂર નથી. જો હું તમને ખાતરી આપી કે મૂડી 'A'- અથવા, લોઅરકેસ' એ 'બાદ મૂડી' એ ' હતી બરાબર એક બીટ, પણ તમે 32 તે ખબર નથી - વસ્તુઓ માત્ર તેમજ કામ જો તે 16 બીટ કે ઘસવું હતા હોત - અથવા ના, હું માનું તે wouldn't - અથવા 64-bit ઘસવું, કદાચ આવી હતી. પરંતુ તમે 32 ઉપયોગ ન કરવો જોઈએ. તમે તેના બદલે 'એ' બાદ મૂડી 'એ' લોઅરકેસ ઉપયોગ કરી શકે છે. 32 વક્તા: ઠીક છે. જો તમને લાગે છે કે તમે ખૂબ જ લખી રહ્યાં કરી શકો છો છે તો તમે તેને વ્યાખ્યાયિત કરી શકો છો ટોચ પર. તેથી તમે હોઇ શકે છે, જેમ કે પૂર્ણાંક તફાવત = 'એ' બાદ મૂડી 'એ' લોઅરકેસ. અને પછી તમે તફાવત બદલે ટાઈપ કરી શકો છો. માન્ય છે. પરંતુ માત્ર 32 નંબરનો ઉપયોગ કરીને પ્રકારની છે - 33 વક્તા: હોવા છતાં તે હકીકત છે કે તે 32 બીટ છે કારણે છે? અલી: યાહ. રોબ: ત્યાં હોઈ શકે છે - માત્ર એક જ ગેરંટી અમે તમને કરવાની જરૂર છે કે વચ્ચે તફાવત લોઅરકેસ અને મોટા એક બીટ છે. તે મહત્વનું નથી જોઈએ કે તે 32 બીટ કે ઘસવું છે બને છે. સમય વિચારણાઓ માટે, અમે આ બોલ જવાનું શરૂ કરીશું. તે ઠીક છે જો તમે કરવાનું પૂર્ણ કર્યું નથી. તે વિશે ચિંતા કરશો નહીં. રોબ: ધારી રહ્યા છીએ કો એક મૂડી પત્ર છે - અમે ધારી કો એક મૂડી પત્ર છે નથી. અમે જાણીએ છીએ કેચ આ વખતે લૂપ બાદ મૂડી પત્ર છે - આમ-જ્યારે લૂપ. તેથી તેનો અર્થ એ કે તે 'એ' કંઈક આના જેવું દેખાય. તેથી જો અમે આ લાવવા માંગો છો , આ 'એ' માટે 'એ' આપણે શું કરવું જોઇએ? તેથી અમે અને કેવી રીતે કન્વર્ટ કરશો થોડી વિમાનની મુસાફરી? અલી: અમે તે કેવી રીતે વિમાનની મુસાફરી કરી શકું? રોબ: તેથી આપણે જાણીએ છીએ અમે 32 બીટ વિમાનની મુસાફરી કરવા માંગો છો. જેથી 'એ' બાદ 'એ' કરવા કરશે, અથવા અમે 32 લખી શકે છે, પરંતુ - તે રફૂ કરવું હોય, તો તે અન્ય આસપાસ રસ્તો છે. અલી: ઠીક છે જેથી રોબ અહીં કે જે નંબર ગણતરી છે, જાદુ 32 નંબર. તેથી તેમણે બહાર શોધવા છે જ્યાં કે બીટ ફ્લિપ વિસ્તાર હશે. અને પછી આપણે શું જ્યાં પ્રશ્ન ગુણ છે મૂકી શકું? રોબ: અમે તે બીટ કેવી રીતે વિમાનની મુસાફરી કરી શકું? આ મોટા અક્ષર સંદર્ભમાં, તે 0 છે, અને અમે 1 એક બનવું છે. 34 વક્તા: |. રોબ: યાહ. તેથી આ અમને કહી રહ્યાં છે અમે 'એ' લે છે. અમે તેના 0 સાથે ORing કરી રહ્યા છીએ - 1000 - અને તે = છે. અલી: શું કે દરેકને અર્થમાં છે? અમે તેના મારફતે બીટ બીટ કરી શકો છો જાઓ જો તમે કરવા માંગો છો. 35 વક્તા: તમે [અશ્રાવ્ય] અલી: જયાં બાદ ચિહ્ન છે? રોબ: ઓહ, તમે અહીં અર્થ આ છે? અલી: ઓહ, હા. રોબ: તેથી હું માનું આ અમને છે. અમે 32 કહેવું છે, અને હવે અમે શકે માત્ર bitwise ઓપરેટરો ઉપયોગ કરી રહ્યા છો. અલી: અમે જાદુ નંબરો ગમતું નથી. અમે તે નથી જઈ રહ્યાં છો. પણ મને લાગે છે કે અમે માત્ર એક bitwise ઓપરેટર ઉપયોગ કરવો જોઈએ - 36 વક્તા: જો તમે એક ^ વાપરવા માટે, તમે 32 મળશે? 37 વક્તા: અરે વાહ, મને લાગે છે કે - રોબ: યાહ તમે કરશે. અલી: આ રીતે તમે જવા માટે આ કરી શકે છે મૂડી માંથી લોઅરકેસ છે. હવે કોઈને મને જણાવો કે રોબ અને હું પ્રોમ્પ્ટ બદલાયેલ છે અને અમે ગયા કેવી રીતે કરી શકો છો મોટા લોઅરકેસ છે, બદલે માટે લોઅરકેસ અપરકેસ તરીકે અમે પહેલાં હતી? શું કોઇને કોઇ વિચારો હશે કે શા માટે વધુ મુશ્કેલ હોઈ શકે છે? રોબ: તેથી અમે છો - અલી: અરે વાહ, આગળ જાઓ. 38 વક્તા છે: | ઓપરેટર જ હતી ખરેખર ઉમેરવા માટે સારું. અલી: અરે વાહ, બરાબર. રોબ: તેથી અમે લોઅરકેસ માં કરવું કેસ મોટા માંગો છો તે છે, આ 'a'કન્વર્ટ - તેથી અમે કેટલાક સંખ્યામાં અહીં મૂકો અને કેટલાક ઓપરેટર ઉપયોગ જેથી તે આવે કરવા માંગો છો અમે મૂડી એ માટે અમે હજી પણ કદાચ કરી રહ્યાં છો 32 કોઈક વાપરી રહ્યા હોય, પરંતુ હવે શું કરવું કેવી રીતે આ વિચાર માટે આ બહાર આવે? કૈચ તેથી - ઓહ, હું હજી પણ તે ખૂબ માંગો છો - અલી: તેથી હવે જો આપણે લોઅરકેસ માંથી રૂપાંતરિત કરી રહ્યા છીએ ફરીથી મોટા, અમે પછી આ ^ કામગીરી કરવા માટે, તમે જેમ ગાય્સ જણાવ્યું હતું. રોબ: અન્ય રીતે તમે વસ્તુઓ કરી શકે છે. આ bitwise ઓપરેટરો ઘણાં અંત ખૂબ જ સરળતાથી દ્રષ્ટિએ વ્યાખ્યાયિત છે અન્ય bitwise ઓપરેટરો છે. તેથી હું અથવા ^ ઉપયોગ ન થવાનું હતું, પરંતુ ^ સંપૂર્ણ દંડ કામ કર્યું હતું. અલી: ઠીક છે, તેથી અમે છેલ્લા સમસ્યા છે, કે જે મૂળભૂત છે જવા જઈ રહ્યાં છો - છેલ્લા સમસ્યા માટે દ્વિસંગી માં કંઈક રૂપાંતર છે. તેથી, ઉદાહરણ તરીકે, તમે 50 હોય છે, અને તે પછી તમે તે બદલવા માટે દ્વિસંગી છે, જે 110010 છે. અને મને લાગે છે કે તમે ગાય્ઝ બધા વ્યાખ્યાન દ્વિસંગી વિશે જાણવાની. અને તમે પણ તે કોઈ પણ અગ્રણી 0s મૂકી નથી તેવું માનવામાં આવે છે. રોબ: હવે તમે તે ભાગ અવગણી શકો છો. પ્રથમ પાસ, તો તમે તેને આવું છે કે અગ્રણી 0s શકો છો. અને પછી અમે એ કોઈ અગ્રણી 0s હોય સુધારવા માટે, જો આપણે સમય હોઈ શકે છે. અલી: તેથી તે વિશે ચિંતા કરશો નહિ. માત્ર દ્વિસંગી માં વિચાર કરવાનો પ્રયાસ કરો. સારી શરૂ કરવા સ્થળ હશે - રોબ: અમે પૂર્ણાંક માટે પૂછો જરૂર છે. અલી: ઓહ હા, તે એક સારો એક છે. અમે તે સાથે શરૂ કરી શકો છો. તેથી તમે પ્રોમ્પ્ટ બદલી શકો છો. તેથી તેના બદલે એક અક્ષર છે, હવે અમે પૂર્ણાંકો સાથે વ્યવહાર કરી રહ્યા છો. કૂલ? રોબ: અને હવે શું છે અમારા ડુ-જ્યારે શરત હશે? તે એક પૂર્ણાંક બિન નકારાત્મક માટે પુછે છે. અલી: જ્યારે અમે કંઈક બીજું તો વપરાશકર્તાને પૂછવાની રાખવા માંગો છો? જ્યારે તે 0 કરતાં નાની છે. અલી: અધિકાર. રોબ: જ્યારે હું 0 કરતાં ઓછી છે. અલી: હવે તો અમે તેને રૂપાંતરિત કરવા માંગો છો. શું તમે ગાય્સ શું કરવું કોઇ વિચારો હશે? કોઈપણ inklings? યાહ. 39 વક્તા: શું અમે તેને કન્વર્ટ હોય, અથવા અમારી માત્ર કેટલાક 0s અને 1 સે છાપી શકો છો કે જમણા નંબર હશે? તમે લૂપ માટે કરી શકે છે અને 2 સત્તાઓ દ્વારા બહાર ગણતરી? રોબ: હા. તમે મને તેના બાઈનરી રૂપાંતરિત કરવાની જરૂર નથી - i ની દ્વિસંગી પ્રતિનિધિત્વ i ની અંદર ન ફિટ થશે. તમારે માત્ર i ની દ્વિસંગી પ્રતિનિધિત્વ પ્રિન્ટ કરવાની જરૂર છે. અલી: અન્ય શબ્દોમાં, તમે બે સત્તાઓ દ્વારા જવાની જરૂર નથી. રોબ: કારણ કે હું પહેલેથી જ દ્વિસંગીઓ તરીકે સંગ્રહિત કરવામાં આવી રહી છે, તેથી તમે જરૂર નથી તે બાઈનરી રૂપાંતરિત કરો. ફક્ત તેની દ્વિસંગી પર જાઓ, અને તે છાપો. અને તમે bitwise ઉપયોગ કરવાની જરૂર જઈ રહ્યાં છો, કારણ કે તમે જોવા માંગો છો વાસ્તવિક બિટ્સ. તમે bitwise ઉપયોગ કરવાની જરૂર નથી, પરંતુ આમ કરો. અને તે ખરેખર છે - તમે બે સત્તાઓ 2 દ્વારા ગુણાકાર કરીને કરી શકો છો. અમે એક છેલ્લા બે દ્વિસંગી bitwise ઓપરેટર પર જઈશ, જે આ એક છે. તેથી જ્યારે તમે લઇ - અલી: તમે બંને પસાર કરી શકું? રોબ: યાહ. તેથી આપણે 9 સાથે જાઓ. તેથી 9 ડાબી 1 પાળી - પાળી અર્થ બાકી શું માત્ર ડાબી છે બધા બિટ્સ ખસેડવા અને 0 દાખલ કરો. તેથી અમે 9 તમામ બિટ્સ ડાબી એક તરફ સ્થળાંતર કરી રહ્યા છીએ સ્થિતિ છે, જે અમને આપે છે - તેથી નોટિસ અમે બદલ્યા હતા બધું એક છોડી, અને પર 0 શામેલ જમણી બાજુ. જો અમે ખસેડાયેલો હતી બે દ્વારા છોડી, અમે બે દ્વારા છોડી બધું પાળી કરશે, અને બે ગાબડા ભરો 0s દાખલ કરો. પ્રશ્ન? અલી: તેથી તે પછી યોગ્ય પાળી સમાન વસ્તુ કરે છે. જો તમે 9 અધિકાર 1 પાળી હોય તો પછી તમે માત્ર પર કરી રહ્યાં છો તે બધું ખસેડીને જમણી, તો તમે આંકડાના, જેથી 100 ને બદલે ગુમાવી બેસે છે. રોબ: તેથી તમે તેને દંડ કે તમે થોડી કે બધી પ્રયત્ન થયું ગુમાવી છે જમણી રીત. ત્યાં અધિકાર પાળી વિવિધ પ્રકારના હોય છે, પરંતુ મૂળભૂત રીતે તમે વિચાર કરી શકો છો અધિકાર 2 દ્વારા માત્ર ભાગાકાર તરીકે પાળી. અને તમે ડાબી પાળી અને 2 દ્વારા ગુણાકાર તરીકે વિચાર કરી શકો છો. તેથી તમે આ રૂપાંતર જો - જો તમે 9 1 પાળી છે, કે જે 10010 સમાન છે રૂપાંતરિત, જો તમે વાસ્તવમાં ગયા બાઈનરી દ્વારા અને બહાર figured છે કે શું હતું, તે માત્ર 18 હશે. અમે હમણાં જ 2 દ્વારા વધવું. 1001 ડાબી 2 પાળી માટે 36 પ્રયત્ન રહ્યું છે. અમે 4 દ્વારા વધવું. ઠીક છે, ઠંડી, આથી તે આ માટે એક સરળ bitwise ઓપરેટર છે. વધુ ગૂંચવણ? શું તમે ગાય્સ તેનો પ્રયત્ન કરવા માંગો છો? અથવા અમારી માત્ર જ કૂદકો કરી શકો છો અને તેને શરૂ? રોબ: અમે કદાચ અધિકાર સાઇન કૂદી જોઈએ અલી: અરે વાહ, ઠીક. રોબ: અને તે દ્વારા એક સાથે ચાલવા. અલી: વેલ હું ફક્ત જાય પડશે. જેથી તેઓ શરૂઆતમાં જણાવ્યું હતું કે, અમે હમણાં જ ક્રમેક્રમે પસાર રહ્યા છીએ. તેથી અમે લૂપ જરૂર જઈ રહ્યાં છો. શું કોઇને લૂપ શ્રેષ્ઠ પ્રકારનો આ મારફતે જાઓ એક વિચાર છે? અમે જ્યારે આંટીઓ હોય છે, આમ ત્યારે આંટીઓ, આંટીઓ છે. 40 વક્તા: લૂપ દો ત્યારે? રોબ: તેથી યાદ હું તે વિશે પહેલાં જણાવ્યું હતું કે, અમે માત્ર કરવા-જ્યારે વાપરી રહ્યા હોય આંટીઓ વપરાશકર્તા ઈનપુટ વિચાર. તમે ખૂબ ખૂબ ક્યારેય ક્યારેય કંઈપણ માટે તેમને ઉપયોગ કરશે. અલી: સાથે સમસ્યા શું-જ્યારે આંટીઓ છે તે કંઈક કરે તે પહેલાં માટે ચકાસે છે આ પરિસ્થિતિ. તેથી, તે કંઈક ખરાબ કરી શકે - ગમે, નુકસાન - કંઈક છે જે શક્ય નથી કરવું. તેથી તમારે પ્રથમ તપાસ કરવા માંગો છો. રોબ: ત્યાં કિસ્સાઓ ખૂબ જ્યાં તમે-જ્યારે આંટીઓ ઉપયોગ કરી શકો છો, પરંતુ લોકો નથી અપેક્ષા નથી તમે તેમને વાપરવા માટે, સિવાય કે તે વપરાશકર્તા ઈનપુટ છે. તેથી અમે ઉપયોગ કર્યો છે અમારા ડુ-જ્યારે લૂપ મને વિચાર. કેટલી વખત અમારી લૂપ માટે લૂપ કરવા માંગો છો રહ્યું છે? અમે i ની બિટ્સ દરેક પર લૂપ કરવા માંગો છો. કેટલી બિટ્સ મને છે? 41 વક્તા: 32. અલી: યાહ. રોબ: તેથી ત્યાં 32 બિટ્સ છે. અમે 32 કહેવું નથી માંગતા. અમે તેના બદલે sizeof કહેવું માંગો છો - જે, તો તમે તે હજુ સુધી જોવામાં વર્ગ છે? અલી: ના. રોબ: તે કે ઉપયોગ શા માટે કહેવું નથી - sizeof (પૂર્ણાંક) 8 વખત - અલી: તેથી, sizeof છે - 42 વક્તા: [અશ્રાવ્ય] અલી: રસિક. તેથી, sizeof આંતરિક એક સી કાર્ય જ્યાં તે ફક્ત તમને કહે છે બિટ્સ માં નંબર - રોબ: બાઇટ્સ. અલી: બાઇટ્સ, માફ કરશો - બાઇટ્સ કે જે ચલ માટે કિંમત સ્ટોર છે સંખ્યા. મને લાગે છે કે તે વર્ગમાં પર ગયા, પછી પૂર્ણાંક 4 બાઇટ્સ કદાચ છે. કૂલ? રોબ: પણ તમે જાણો છો કે પૂર્ણાંક 4 બાઇટ્સ છે જરૂર નથી કરીશું. તમે કહો કરવાનો પ્રયત્ન કરીશું - તમે sizeof (પૂર્ણાંક) નો ઉપયોગ 4 બાઇટ્સ વિચાર કરીશું. અને તે કેટલીક વસ્તુઓ માટે ખરેખર અગત્યનું છે. પૂર્ણાંક 4 બાઇટ્સ ન હોઈ શકે છે. બીજા કમ્પ્યુટર પર, પૂર્ણાંક 8 બાઇટ્સ હોઈ શકે છે. તેથી તમારા કાર્યક્રમ છે કે જે કોમ્પ્યુટર પર કામ કરશે નહિં તમે 32 હાર્ડ કોડેડ કારણ કે તે કમ્પ્યુટર પર હોય ત્યારે બીટ 64 બિટ્સ બને છે. અલી: તેથી તમે બીટ્સ કે તમે તેને ઉલટાવી માંગો છો કુલ સંખ્યા હોય છે. રોબ: અને એક બાઇટ અને થોડી વચ્ચે તફાવત એ છે કે ત્યાં એક બાઈટમાં 8 બીટ્સ છે. તેથી sizeof (પૂર્ણાંક) 4 બાઇટ્સ આપે છે, તે પછી અમે તે વધવું હોય 8 દ્વારા 32 બિટ્સ વિચાર. અલી: ઠીક છે, તેથી અમે મહત્તમ જણાવો અને અમે જાણીએ છીએ કે અમે માંથી જવા માગતા - અમે તેમને બધા પસાર કરવા માંગો છો. તેથી અમે 0 થી numBits પર જાઓ કરવા માંગો છો. જેથી કોઇને ખબર નથી કે કેવી રીતે તે માટે લૂપ લખવા માટે? કોઈપણ? 43 વક્તા: [અશ્રાવ્ય] અલી: તેથી તમે zeroth બીટ માંથી એ નંબર હું પસાર કરવા માંગો છો પ્રથમ બીટ, બીજો બીટ, ત્રીજા બીટ, numBits તમામ રીત. બીટ્સ કે જે તમે મેળવી શકો છો મહત્તમ સંખ્યા. રોબ: સામાન્ય લૂપ અમે ઉપયોગ અમે શું કરીએ કંઈક એક્સ વખત કરવા માંગો છો શું છે? અલી: માટે. પરફેક્ટ. તેથી અમે માટે હોય છે. અને પછી અમે iterator, કે જે હું નથી રહ્યું છે બનાવશો. રોબ: જ. અલી: = જોહાન 0. તેથી અમે 0 અંતે શરૂ કરી શકશો. અને પછી અમે એ ખાતરી કરો કે શરત છે જઈ રહ્યાં છો, જ્યારે તમે છો તે મારફતે દરેક એક સમય જતાં - [અવાજો INTERPOSING] રોબ: જ. અલી: જ numBits કરતાં ઓછી છે. તેથી અમે એક સમકક્ષ વાસ્તવિક કરવા નહિં માંગો, તો કારણ કે તેઓ numBits છો કુલ છે, અને અમે 0 શરુ થાય છે. તેથી અમે ખરેખર હોય રહ્યા છીએ - 44 વક્તા: ઓહ. અલી છે: નિર્દેશિકાઓની 1 બાદ numBits ન અંત નથી. રોબ: અમે બિટ્સ લેબલ 0 થી 31, અમે તેમને 1 32 ન લેબલ નથી. અલી: અને પછી અમે એક દ્વારા દરેક સમય વધારો, જઈ રહ્યાં છો કારણ કે અમે કરવા માંગો છો દરેક એક એક તપાસો. તેથી અમે જ જઈશ + +. 45 વક્તા: શા માટે છે કે જે તમને કરી રહ્યા છે? 46 વક્તા: શા માટે તમે દરેક બીટ મારફતે જવું છે? રોબ: તેથી અમે દરેક બીટ પસાર કરવા માંગો છો અને - તેથી આપણે કહેવું અમે કેટલીક નંબર હોય છે. અલી: 68. રોબ: અમે 68 નો ઉપયોગ કરી શકો છો. તેથી બાઈનરી 100100 જ હશે. તેથી આ i ની અંદર છે અને અમે આ બિટ્સ દરેક પર જાઓ કરવા માંગો છો. તે 1 એક? 1 છાપો. તે 0 છે? 0 છાપો. પછી અમે આગામી બીટ પર જાઓ. તે 1 એક? 1 છાપો. એક 0 છે? 0 છાપો. અલી: સરસ, ઠીક છે. હવે અમે જ્યાં કે બીટ છે માટે યોગ્ય ઇન્ડેક્સ પર છો. અમે તે ચોક્કસ એક કેવી રીતે તપાસ કરી શકે છે? હવે કહો કે અમે = જ 0 અંતે છો, જેથી અમે બીટ ઓફ 0 અનુક્રમણિકા તપાસ કરવા માંગો છો. તેથી, આ કિસ્સામાં, આ એક છે. તેથી હવે અમે કેવી રીતે તપાસ જઈ નથી - ઓહ, તો તે આ એક હશે. રોબ: યાહ. અલી: માફ કરશો. આપણે એક કે તપાસવા વિશે કેવી રીતે એક અર્થમાં કરશે જાઓ,? અમે જો તે 0 અથવા 1 એક કેવી રીતે તપાસો? Let's વેલ - CLASS: અને 1? અલી: અને? યાહ. રોબ: તેથી આપણે કહેવું અમે પહેલાથી 1 હોય છે. તો પછી આ &, આ પરત કરશે કે તેને 1 અથવા 0 હતી. અલી: તેથી અમે નીચે જઈ શકે છે. અને અમે જેમ તમે ગાય્સ જણાવ્યું હતું અને કાર્ય કરવાનું છે, કરી શકો છો. રોબ: પૂર્ણાંક - હું આ કેવી રીતે કરવા માંગો છો કહેવું નથી - isOne = i. અને પ્રથમ બીટ અમે જોઈ શકાય થાય છે, અમે હું & 1 કરી રહ્યા છીએ. હવે અમે શું માટે અને બીજા બીટ માટે કરવા માંગો છો દ્વારા જવું છે? 47 વક્તા: 2. રોબ: અરે વાહ, બીજો કે અમે 2 છો. અલી: તમે નોટિસ કરીશું કે 1 આ બોલ પર ડાબી એક ખસેડવામાં આવી છે. તેથી અમે કોઈ bitwise ઓપરેટરો શીખ્યા છે કે કાર્ય કરે છે? રોબ: આગામી એક - અલી: અરે વાહ, અધિકાર, બરાબર. તેથી તે ડાબી પાળી છે. તેના બદલે હંમેશા 1 થી ચકાસણીનાંબદલે, તો અમે તેને પાળી રહ્યા છીએ. અને કેટલી વખત અમે તેને પાળી જવું છે? જો અમે zeroth એક ચકાસણી કરી રહ્યાં છો તો અમે તેને શૂન્ય પર ખસેડી રહ્યા છીએ. અરે વાહ, બરાબર. જેથી તમે તેને જ દ્વારા પાળી છોડી દીધી. પરફેક્ટ. તેથી હવે આપણે જાણીએ છીએ - અમે જો તે 1 છે આ પૂર્ણાંક હોય છે, અને તે પછી - જેથી છેતરપિંડી ના રોબ અહીં પ્રકારની - અને તેથી હવે તે આગળ જઈને કરવામાં આવી હતી અને તે માત્ર કહેતા છે કે જો તે વાસ્તવમાં 1, કારણ કે 1 સાચું માટે મૂલ્યાંકન કરે છે, તેથી અમે કહી isf isOne 1 સમકક્ષ નથી - જેથી isOne જો, તો પછી અમે 1 છાપો, અને અન્યથા અમે 0 છાપો. રોબ: તેથી અમારા કાર્યક્રમ એકંદર ભૂલ છે. વેલ, આ પ્રથમ પર પ્રશ્નો. 48 વક્તા: તમે ક્યારેય ચાર કામગીરી ભાગ અંદર isOne મૂકી શકે અને પછી તે છેલ્લા ભાગ તરીકે છે પોતે પાળી? તેથી isOne 1 અને પછી સમકક્ષ - રોબ: હા, તમે આ કરી શકો છો. અમે ખરેખર દર્શાવે છે કે એક વખત અમે ભૂલ કે હું છું વિશે ઠીક કરી શકે છે તમે બધા સાથે ચર્ચા કરો. ઓર્ડર અમે વસ્તુઓ પર જઈ રહ્યાં છો નોટિસ. આ દ્વિસંગી પ્રતિનિધિત્વ આપવામાં, અમે zeroth બીટ સાથે શરૂઆત કરી છે. જો તે 0 છે, તો પછી અમે છાપવા આવે છે - સાથે સાથે, તે 0 છે, તેથી અમે 0 છાપવા છે. તો પછી અમે બીજા બીટ પર જાઓ. તે 0 છે, તેથી અમે 0 છાપો. તો પછી અમે ત્રીજી બીટ પર જાઓ. તેને 1 છે, તેથી અમે 1 છાપો. અલી: તેથી તે પાછળની બનશે. તેથી તમે કેવી રીતે ગાય્સ સૂચવે છે કે અમે તે સુધારવા અને અન્ય રીતે જવું? 49 વક્તા: [અશ્રાવ્ય] રોબ: યાહ. તેથી તેના બદલે 0 થી numBits જવા માટે, અમે numBits બિટ્સ માંથી 0 જઈશ. અલી: તેથી [અશ્રાવ્ય] હંમેશા અન્ય માર્ગ જઈ શકે છે. રોબ: NumBits 1 બાદ, કારણ કે છેલ્લા nubmer છે - અલી: કારણ કે તે 0 થી 31 પર જાય છે. અને પછી આપણે હંમેશા ખાતરી કરો કે તે 0 કરતાં મોટો જ જેથી તમે ન જાય તો પડશે ખૂબ દૂર જમણી બાજુ. અને પછી તમે હંમેશા 1 દ્વારા સબ્ટ્રેક્ટ અધિકાર પર જાઓ પડશે. રોબ: તેથી હવે અમે રિવર્સ લૂપ છે, અને નંબર પ્રિન્ટીંગ પાછું છે યોગ્ય રીતે. 50 વક્તા: તમે પાળી વસ્તુ પણ બદલી નથી શું? અલી: તેથી નં. રોબ: અમે જ ચોક્કસ કામગીરી કરી રહ્યા છીએ હવે સિવાય, વિપરીત ક્રમમાં. તેથી તેના બદલે numBits દ્વારા સ્થળાંતર કરવાનું બાદ 1 કંઈપણ આ વિચાર બીટ કે જે છેલ્લે કરવાનું બદલે છે, અમે માત્ર તે પ્રથમ કરવું પડશે. આ ખાળવાનો અહીં, અમે બધું ક્રમ ઉલટાવી કે અંદર બને છે. પરંતુ અમે બદલવા માટે શું અંદર તમામ ખાતે થાય નહિં માંગો. અલી: જરૂરી છે કે અર્થમાં છે? પ્રક્રિયા? ઠીક છે, તેથી તે અન્ય કોઈને કોઈ અન્ય પ્રત્યયાત્મક પ્રશ્નો હોય છે? અલી: પહેલાં તો અમે તેના બિંદુ જાય છે કે જે - અલી: અધિકાર બધા, તેમજ જાઓ. જ ઉપયોગ કરીને અમારી પ્રયત્ન બદલે: - રોબ તેના બદલે જ ઉપયોગ કરીને હંમેશા દ્વારા એક ડાબી પાળી જ, જેમ પાળી છે, મને લાગે છે કે શું તમે કહી રહ્યાં છે ગમે, માટે જ પોતે વાપરે છે. તેથી જ - હું માનું આ મુશ્કેલ છે - એ જ = 1 << 31. છે કે હું શું કરવા માંગો છો? મને લાગે છે કે તે 31 << છે. જ> = 1. જ >>, >> isOne આઇ, અને જ - તેથી હવે બદલે મદદથી - અલી: તમે સતત કર્યા બદલે રહ્યાં છો જ ખસેડીને તેને ચેક ઇન્ડેક્સ. તે ખરાબ નથી. અમે એક તર્કશાસ્ત્ર સમાન પ્રકારની ઉપયોગ કરી રહ્યાં છો. તેથી જો તમે પાછા જાઓ - ઓહ, પરંતુ તે તેને ગુમાવી રહ્યું છે. ઠીક છે, તો તમે ફક્ત તેને ફરીથી લખો રહ્યા છીએ. જો તમે નોંધ્યું છે કે અમે વખત 1 << જ જથ્થો ધરાવે છે, અને અમે હતા જ એક ઈજાફો દ્વારા દરેક એક સમય incrementing, પરંતુ આ સમય બદલે તેઓ લૂપ માટે અંદર ટોચ પર જ ના પગાર - વધારો કરી રહ્યા છીએ. તેથી બદલે હંમેશા તેને ખસેડીને નીચે - રોબ: લૂપ માટે આ ખૂબ જ પ્રથમ પુનરાવૃત્તિ, અમે જ 10000 છે. લૂપ માટે ની આગામી પુનરાવૃત્તિ 01000 છે. આગામી પુનરાવૃત્તિ હોય છે. અને 1 એ માત્ર નીચે પ્રચાર રાખવા રહ્યું છે ત્યાં સુધી અમે ખૂબ જ હિટ ઓવરને, હવે જ્યાં તે આ છે. આગામી એક, 1 માટે આ બોલ પર કોઈ રન નોંધાયો નહીં શકાય છે, રહ્યું છે અને એ જ હવે વધારે કરતાં અથવા 1 માટે સમાન. હું પણ 0 કરતાં મોટો, સમાન તફાવત મૂકી શકે છે. અને પછી તે તે. પ્રશ્નો? યાહ. 51 વક્તા: [અશ્રાવ્ય] રોબ: તેથી કે તે જ છે - તમે જ + + = 3 જોઇ? તેથી આ 3 જ = જ + + જેવા જ છે? તમે વર્ચ્યુઅલ સી કોઈપણ ઓપરેટર કે કરી શકે છે તેથી જ >> છે = 3 જ = >> જ 3 થી સમાન. જેથી bitwise ઓપરેટરો સાથે પણ કામ કરે છે. અને હું 31 અહીં ન કરવી જોઇએ. 1 - હું numBits મૂકેલ છે કરીશું. અલી: યે, કોઈ જાદુ નંબરો. ઠીક છે, તે 4:00 જોકે, તેથી જો તમે ગાય્સ પર જાઓ હોય - પરંતુ આ અર્થમાં છે? શું તમે ગાય્સ અન્ય કોઇ પ્રશ્નો હોય તો? રોબ: હું પણ છે કે જે ફેંકવું જો આપણે ઇચ્છતા જઈને કરવામાં આવી હતી - છે કે તેઓ ત્રણ ભાગનું બનેલું ઓપરેટર બધા ચર્ચા? અલી: નંબર તે ઠીક છે. રોબ: તેથી તમે તેને માં આગામી સમય જોવા માટે કરી શકે છે. અલી: ઠીક છે, ખરેખર? હવે તમે માત્ર નિદર્શન કરી રહ્યાં છો. રોબ: ના, હવે it's - આ એ છે જે લોકોને રસ નહીં, અને હવે તેઓ તેને ધ્યાનમાં જવા પડશે. તેથી હવે, કે જે એક પગલું આ જ વસ્તુ, કરે છે. તેથી તપાસ પ્રથમ, હું અને 1 જ છે? તે સાચું છે? જો આમ હોય, 1 એ છાપો, બીજું, એક 0 છાપો. અલી: પરંતુ તે કરવાથી અન્ય માર્ગ સંપૂર્ણપણે દંડ તેમજ છે. તે જ તર્ક છે. તેથી તે જેમ છે નથી - રોબ: આ બિંદુએ, અમે તે સર્પાકાર કૌંસ છૂટકારો મેળવવા માટે, કારણ કે તે માત્ર શકો છો લૂપ માટે એક લીટી. અલી: ઠીક છે, કે જેથી અર્થમાં કમાવે છે? કે જે જમ્પ પ્રકારની હતી. પરંતુ તે માત્ર વાક્યરચના પ્રકારની હતું, જેથી. કૂલ? કોઈપણ અન્ય પ્રશ્નો છે? બધા હક: Rob. અલી: બધા અધિકાર કૂલ. કલમ આવતા માટે આભાર.