2010-01-16 14 views
6

मुझे असेंबली के बारे में बहुत कुछ पता नहीं है, लेकिन मुझे पूरा यकीन है कि x86 पर वर्ग रूट निर्देश हैं? मैं कपड़े में अच्छी तरह से काम करने के लिए स्क्वायर रूट फ़ंक्शन पाने की कोशिश कर रहा हूं और जो मैंने पाया है उसे किसी भी तरह से दबाया जाता है जब मैं इसे कई बार चलाता हूं।x86 असेंबली का उपयोग कर फर्थ में स्क्वायर रूट फ़ंक्शन?

: sqrt-closer (square guess -- square guess adjustment) 
2dup/over - 2/
; 

: sqrt (square -- root) 
1 begin 
sqrt-closer dup 
while + repeat 
drop nip ; 
+0

की "फ्रॉथ" obfuscated-forward count str = .' –

उत्तर

4

एक फ़्लोटिंग-पॉइंट स्क्वायर रूट निर्देश (FSQRT) है। यह काफी तेज है, भले ही आपको केवल एक पूर्णांक वर्ग रूट की आवश्यकता हो।

6

यहाँ देखो:

http://www.azillionmonkeys.com/qed/sqroot.html

सब कुछ आप कभी भी वर्ग जड़ों के बारे में जानना चाहता था, लेकिन पूछने से डरते थे। X86 असेंबली भाषा में कार्यान्वयन शामिल है।

संबंधित मुद्दे