अधिकांश भाषाओं कार्यों या पुस्तकालयों कि ऐसा करते हैं, आम तौर पर एक bignum पुस्तकालय कहा जाता है (GMP एक अच्छा एक है।)
है, मैं इसे उसी तरह है कि लोगों को लंबे समय तक ऐसा करना होगा कागज पर गुणा। ऐसा करने के लिए आप या तो संख्या वाले तारों के साथ काम कर सकते हैं, या बिटवाई ऑपरेशंस का उपयोग करके इसे बाइनरी में कर सकते हैं।
उदाहरण:
45
x67
---
315
+270
----
585
या बाइनरी में:
101
x101
----
101
000
+101
------
11001
संपादित करें: द्विआधारी मुझे एहसास हुआ में यह कर कि यह बहुत सरल (और निश्चित रूप से तेजी से) का उपयोग कर कोड करने के लिए किया जाएगा के बाद आधार -10 संख्या वाले तारों के बजाए बिटवाईर ऑपरेशंस। मैंने पैटर्न दिखाने के लिए अपने बाइनरी गुणात्मक उदाहरण को संपादित किया है: नीचे 1 संख्या में प्रत्येक 1-बिट के लिए, शीर्ष संख्या, बिट-शिफ्ट बाएं एक चर के लिए 1-बिट बार की स्थिति जोड़ें। अंत में, उस चर में उत्पाद शामिल होगा।
उत्पाद को स्टोर करने के लिए, आपको दो 64-बिट संख्याएं होनी चाहिए और कल्पना करें कि उनमें से एक पहले 64 बिट्स और दूसरा उत्पाद की दूसरी 64 बिट्स है। आपको कोड लिखना होगा जिसमें दूसरे नंबर के बिट 63 से पहले नंबर के बिट 0 को जोड़ना होगा।
स्रोत
2008-10-11 00:00:13
चेक इस> [एक एल्गोरिथ्म बड़ी संख्या का गुणा करने के लिए] (http://www.msccomputerscience.com/2014/08/design में मेरी कोड टुकड़ा है -अल्गोरिदम-टू-मल्टीप्ली-ऑफ-big.html) – ARJUN