{"blog_title":"melpon\u65e5\u8a18 - Haskell\u3082C++\u3082\u307e\u3068\u3082\u306b\u6271\u3048\u306a\u3044\u3078\u305f\u308c\u306e\u30da\u30fc\u30b8","author_url":"https://blog.hatena.ne.jp/melpon/","width":"100%","html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fmelpon.hatenadiary.org%2Fentry%2F20051210%2Fp1\" title=\"ARM\u306e\u5e73\u65b9\u6839(3) - melpon\u65e5\u8a18 - Haskell\u3082C++\u3082\u307e\u3068\u3082\u306b\u6271\u3048\u306a\u3044\u3078\u305f\u308c\u306e\u30da\u30fc\u30b8\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","url":"https://melpon.hatenadiary.org/entry/20051210/p1","categories":["program","C++","BREW","ARM"],"published":"2005-12-10 00:00:00","title":"ARM\u306e\u5e73\u65b9\u6839(3)","image_url":null,"provider_name":"Hatena Blog","provider_url":"https://hatena.blog","height":"190","author_name":"melpon","blog_url":"https://melpon.hatenadiary.org/","version":"1.0","type":"rich","description":"\u3088\u304f\u898b\u3066\u307f\u308b\u3068\u30011bit\u6bce\u306b\uff13\u30af\u30ed\u30c3\u30af\u3067\u53ce\u675f\u51fa\u6765\u308b\u30eb\u30fc\u30c1\u30f3\u304c\u3042\u3063\u305f\uff08;\u00b4\u0414\uff40\uff09 ; IN : n 32 bit unsigned integer ; OUT: root = INT (SQRT (n)) ; TMP: offset MOV offset, #3 ROR #2 * i SUBHS n, n, root, ROR #2 * i ADC root, offset, root, LSL #1 ] BIC root, root, #3 ; for rounding add: CMP n, root ADC root, #1 51\u30af\u30ed\u30c3\u30af\u3063\u3066\u2026\u2026\uff83\uff97\uff8a\uff94\uff7d(*\u00b4\u03c9`) \u65e9\u901f\u524d\u56de\u306e\u3068\u6bd4\u8f03\u3002 \u2026"}