大大毛 的筆記

            DDM's Note

          哪怕沒有辦法一定有說法,
          就算沒有鴿子一定有烏鴉,
          固執無罪 夢想有價,
          讓他們驚訝.

          posts - 14, comments - 23, trackbacks - 0, articles - 58
             :: 首頁 ::  :: 聯系 ::  :: 管理

          ???看到CSDN上有問的,試著做了一個存儲過程來實現它:
          ???問題描述是這樣的:例如整型數16646316,表示為16進制形式則是0XOOFEOOAC,最后需要實現高低位互換然后分解成4個字節數據。

          輸入:
          ???0XOOFEOOAC
          結果:
          ???1. OXOO
          ???2.?OXFE
          ???3.?OXOO
          ???4. OXAC

          存儲過程實現:
          Create?Procedure?p_SplitByteFromInt
          @d?int,
          @b1?binary(1)?output,
          @b2?binary(2)?output,
          @b3?binary(3)?output,
          @b4?binary(4)?output
          AS
          Declare?@t1?smallint,@t2?smallint
          Select?@t2?=?CAST(@d?As?binary(2)),@t1=CAST(CAST(@d?&?0xFFFF0000?As?binary(4))?As?binary(2))
          Set?@b1?=?CAST(CAST(@t1?&?0xFF00?As?binary(2))?As?binary(1))
          Set?@b2?=?CAST(@t1?As?binary(1))
          Set?@b3?=?CAST(CAST(@t2?&?0xFF00?As?binary(2))?As?binary(1))
          Set?@b4?=?CAST(@t2?As?binary(1))

          測試代碼:
          declare?@b1?binary(1),@b2?binary(1),@b3?binary(1),@b4?binary(1)
          exec?p_SplitByteFromInt?16646316,@b1?output,@b2?output,@b3?output,@b4?output
          select?@b1,@b2,@b3,@b4

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           

          i am ddm

          主站蜘蛛池模板: 新昌县| 全南县| 兴安盟| 广平县| 台前县| 宜春市| 连江县| 唐山市| 枝江市| 通江县| 西充县| 金乡县| 衡水市| 青岛市| 金沙县| 秀山| 白玉县| 泰顺县| 万盛区| 景洪市| 澜沧| 鸡泽县| 唐海县| 新闻| 明星| 桂阳县| 缙云县| 丽水市| 乡宁县| 甘肃省| 楚雄市| 兖州市| 房产| 天峨县| 定远县| 尉犁县| 敖汉旗| 南康市| 湘潭县| 雷山县| 香格里拉县|