python क्या पायथन में सीधे हार्डवेयर एक्सेस करने का कोई तरीका है?




hardware graphics (3)

मैं खुद को और खिलौना से ग्राफिकल पुस्तकालयों के बारे में कुछ सीखना चाहता हूं। मैंने एक छोटा सा प्रोग्राम बनाया है जो पिक्सल की सूची के रूप में लाइनों और आकृतियों को परिभाषित करता है, लेकिन मुझे सीधे स्क्रीन तक पहुंचने का कोई रास्ता नहीं मिल रहा है ताकि मैं किसी मध्यवर्ती बिना स्क्रीन पर अंक प्रदर्शित कर सकूं।

मेरा क्या मतलब यह है कि मैं किसी भी prebuilt ग्राफिकल पुस्तकालय जैसे gnome, कोको, आदि का उपयोग नहीं करना चाहता। मैं आमतौर पर कोड को पायथन का उपयोग करता हूं और मेरा प्रोग्राम पायथन का उपयोग करता है, लेकिन मैं इसके साथ सी मॉड्यूल को भी संहिता और एकीकृत कर सकता हूँ।

मुझे पता है कि स्क्रीन हार्डवेयर तक पहुंचने से सीधे पायथन की बहु-मंच पक्ष दूर हो जाता है, लेकिन मैं इसे सीखने के लिए उपेक्षा करता हूं इसलिए: क्या हार्डवेयर को सीधे पायथन में एक्सेस करने का कोई तरीका है, और यदि हां, तो यह क्या है?


नहीं, वीडियो कार्ड के लिए इस प्रकार के कच्चे हार्डवेयर तक पहुंच के लिए पायथन सर्वोत्तम विकल्प नहीं है। मैं डॉ में सी लेखन की सिफारिश करेंगे ठीक है, वास्तव में, मैं इसकी सिफारिश नहीं करता। यह करना एक भयानक बात है लेकिन, मैं ऐसा करने के लिए कैसे सीखा, और यह शायद के बारे में के रूप में अनुकूल है क्योंकि आप किसी भी मध्यवर्ती बिना सीधे हार्डवेयर तक पहुंचने के लिए जा रहे हैं

मैं लिनक्स या एनटी के बजाय डॉस कहता हूं क्योंकि उनमें से कोई भी आपको ड्राइवर लिखने के बिना वीडियो हार्डवेयर तक सीधे पहुंच प्रदान करेगा। इसका अर्थ है कि पूरे ड्राइवर एपीआई सीखना है, और आपको बहुत सारे "जादू" करने की जरूरत है, जो कि बहुत स्पष्ट नहीं होगा क्योंकि विंडोज एनटी में एक वीडियो चालक लिखना काफी जटिल है।

मैं पायथन के बजाय सी कहता हूं क्योंकि यह आपको असली संकेत देता है, और उनके साथ बेवकूफ काम करने की क्षमता। डॉस के अंतर्गत, आप सी में मनमानी भौतिक मेमोरी पतों पर लिख सकते हैं, जो कि आप क्या चाहते हैं। पायथन एक ओएस के तहत सभी पर काम करने की कोशिश कर रहा है ताकि आपको हार्डवेयर एक्सेस करने की अनुमति मिल सके, यह आपके लिए एक निराशा होगी, भले ही आप केवल साधारण सामान करना चाहते थे, जो कि अजगर के लिए अच्छा है।

और, जैसा कि अन्य लोगों ने कहा है, आप इस परियोजना से वास्तविक दुनिया में जो कुछ भी सीखते हैं, उसका उपयोग करने की अपेक्षा न करें। यह दिलचस्प हो सकता है, लेकिन यदि आप इस तरह से एक वास्तविक आवेदन लिखने की कोशिश कर रहे हैं, तो आप को तुरंत अपने कोड को बनाए रखने के लिए किसी के द्वारा शॉट किया जाएगा।


यह अब एक पुरानी धागा है, लेकिन वही सवाल माँग करते हुए मैंने इस पर ठोकर खाई।

मैं विधानसभा भाषा में कार्यक्रम के लिए इस्तेमाल किया। मेरे दिन में, स्क्रीन पर ड्राइंग बस (?) एक स्मृति स्थान में एक मूल्य poking की बात थी मान ने पिक्सेल को चालू या बंद किया और इसके रंग को परिभाषित किया।

शब्द 'प्रहार' मूल रूप से रास्ते से आता है, नहीं कोडांतरक। कोडांतरक में, आपको डेटा रजिस्टर में एक मूल्य लिखना पड़ा, फिर प्रोसेसर को बताएं कि डेटा को दूसरे आदेश का उपयोग करने के लिए कहां और पता रजिस्टर को निर्दिष्ट करने के लिए, आमतौर पर हेक्साडेसीमल फॉर्म में! और प्रत्येक अलग प्रोसेसर की अपनी असेंबली भाषा थी लेकिन हेक तेजी से कोड था!

जैसा कि हार्डवेयर की प्रगति हुई है, मैंने पाया कि ग्राफिक्स हार्डवेयर प्रोग्रामिंग अधिक से अधिक जटिल हो गया है। अब बस एक पिक्सेल को परिभाषित करने से बहुत अधिक है ग्राफिक्स सबसिस्टम का अपना प्रोसेसर - या प्रोसेसर है - और यह है कि आपको उससे बात करना सीखना होगा प्रोसेसर सिर्फ मेमोरी स्थानों में सामान को छिपाना नहीं करता है (मेरा मानना ​​है कि ग्राफिक्स चिप्स पर कुछ समय के लिए दुनिया में सबसे तेज़ सुपरकॉप्टर का इस्तेमाल हुआ!) 'प्लॉन्क' एक बुनियादी आदेश नहीं है।

माफ़ कीजिये; मैंने खुद को पीछे कर लिया। मूल पोस्टर की क्वेरी के जवाब में, मेरा मानना ​​है कि ग्राफ़िक्स-ड्राइंग प्रक्रिया को समझने का लक्ष्य रास्पबेरी पी के साथ प्रयोग करके सर्वश्रेष्ठ हासिल किया जा सकता था। यह पायथन संगत है और इसलिए नौकरी के लिए एकदम सही है। इसका हार्डवेयर अच्छी तरह से प्रलेखित है और यह सस्ता और उपयोग में आसान है।

आशा है कि यह किसी को मदद करता है, चीयर्स, एम


यह एक महान आत्म-शिक्षा पथ है और मैं अपने दो सेंट का मूल्य जोड़ता हूं और सुझाव देता हूं कि आप कुछ समय के गोब्बैक्ट , काहिरा और पायगेम मॉड्यूल को देखकर विचार करें।

पायथन जीओबीजेड मॉड्यूल आपके वर्तमान हित के मुकाबले एक उच्च स्तर पर हो सकता है, लेकिन यह कैरो के साथ पिक्सेल स्तर ड्राइंग को सक्षम करता है ( होम पेज देखें) और साथ ही पायथन के उपयोग से पोर्टेबल जीयूआई ऐप्स के लिए एक सामान्य आधार प्रदान करना

Pygame भी पिक्सेल स्तर तरीकों के साथ ही ग्राफिक्स ड्राइवरों (उच्च स्तर पर) के लिए उपयोग तरीकों - यहाँ एक त्वरित कोड उदाहरण है







graphics