{"id":366,"date":"2021-11-02T20:16:26","date_gmt":"2021-11-02T19:16:26","guid":{"rendered":"https:\/\/www.dev-tronic.de\/?p=366"},"modified":"2024-07-16T17:30:50","modified_gmt":"2024-07-16T15:30:50","slug":"z80-quadratwurzel-aus-16-bit-zahl","status":"publish","type":"post","link":"https:\/\/www.dev-tronic.de\/?p=366","title":{"rendered":"Z80 &#8211; Quadratwurzel aus 16-Bit-Zahl"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Die hier vorgestellte kleine Routine errechnet die Integer-Quadratwurzel aus einer im Register HL gegebenen 16-Bit-Zahl. Das Ergebnis wird im Register DE gespeichert.<\/p>\n\n\n\n<div class=\"wp-block-urvanov-syntax-highlighter-code-block\"><pre class=\"lang:z80 decode:true \">; +++++++++++ ZUSATZ: CPC 7'87\n; DE=INT(SQR(HL))\n; Integer-Quadratwurzeln - voller Bereich\n\nsqr1:\tld\tde,0\n\tld\tbc,-1\nsqrlp1:\tand\ta\n\tadd\thl,bc\t; BC&lt;0\n\tret\tnc\t; HL&lt;=0\n\tinc\tde\n\tdec\tbc\n\tdec\tbc\n\tjr\tsqrlp1\n<\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Und hier noch eine Variante, bei der das Ergebnis im Register A landet. Das Register HL nimmt wieder die Zahl auf, aus der die Quadratwurzel ermittelt werden soll.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<div class=\"wp-block-urvanov-syntax-highlighter-code-block\"><pre class=\"lang:z80 decode:true \" >; A=INT(SQR(HL))\n; Integer-Quadratwurzeln\n; AKKU Max ist 255 -&gt; Max Zahl 65025\n\nsqr:\txor\ta\n\tld\tbc,-1\nsqrlp:\tadd\thl,bc\t; BC&lt;0\n\tret\tnc\t; HL&lt;=0\n\tinc\ta\n\tdec\tbc\n\tdec\tbc\n\tjr\tsqrlp\n\n\tend\n<\/pre><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Die hier vorgestellte kleine Routine errechnet die Integer-Quadratwurzel aus einer im Register HL gegebenen 16-Bit-Zahl. Das Ergebnis wird im Register DE gespeichert. Und hier noch eine Variante, bei der das Ergebnis im Register A landet. Das Register HL nimmt wieder die Zahl auf, aus der die Quadratwurzel ermittelt werden soll.<\/p>\n","protected":false},"author":10,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[20],"tags":[25,23,11,10],"class_list":["post-366","post","type-post","status-publish","format-standard","hentry","category-z80codeschnipsel","tag-8-bit","tag-rechnen","tag-z80","tag-z80ardu"],"_links":{"self":[{"href":"https:\/\/www.dev-tronic.de\/index.php?rest_route=\/wp\/v2\/posts\/366","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dev-tronic.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dev-tronic.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dev-tronic.de\/index.php?rest_route=\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dev-tronic.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=366"}],"version-history":[{"count":4,"href":"https:\/\/www.dev-tronic.de\/index.php?rest_route=\/wp\/v2\/posts\/366\/revisions"}],"predecessor-version":[{"id":572,"href":"https:\/\/www.dev-tronic.de\/index.php?rest_route=\/wp\/v2\/posts\/366\/revisions\/572"}],"wp:attachment":[{"href":"https:\/\/www.dev-tronic.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=366"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dev-tronic.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=366"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dev-tronic.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=366"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}