下面代码双击运行
- @echo off&if not %1.==. call%*&exit/b:: code by plp626
- echo 稍等。。。
- set "_print=set #s= ^!#1^!&for %%a in (^!#2^!)do set/p=^!#s:~-%%a^!<nul"
- set/a b=1,p=30,p2=p*2,w=4,mk=(p+1-b)*w/2&set "and=&"&set "or=|"&set "eor=6"
- if exist andoreor.txt del andoreor.txt
- for %%a in (and;or;eor;)do (
- >>andoreor.txt (echo/&echo 【bitwise %%a】)
- for /f "delims=" %%b in ('%~s0 :out !%%a!')do >>andoreor.txt echo %%b
- )
- start/max notepad andoreor.txt
- exit/b
- :out
- setlocal enabledelayedexpansion&if "%~1"=="6" (set "op=^") else set "op=%~1"
- for /l %%a in (%b% 1 %p%)do set/a x[%%a]=%%a,y[%%a]=%%a
- for /l %%a in (%b% 1 %p%)do for /l %%b in (%b% 1 %p%)do set/a "ans[%%a][%%b]=x[%%a]%op%y[%%b]"
- set #1=!op!│&set #2=3&%_print%
- for /l %%a in (%b% 1 %p%)do set #1=!y[%%a]!&set #2=%w%&%_print%
- echo/&(set #1=─┼&set #2=2&%_print%)&for /l %%a in (1 1 %mk%)do set/p=─<nul
- echo/&for /l %%a in (%b% 1 %p%)do (
- set #1=!x[%%a]!│&set #2=3&%_print%
- for /l %%b in (%b% 1 %p%)do set #1=!ans[%%a][%%b]!&set #2=%w%&%_print%
- echo.
- )
- endlocal&exit/b
复制代码
将x看做一个数,y看做一个数(x,y 属于整数),那么x&y的结果用数学表达式怎么表示?
通过这张表大家归纳一下,若能归纳出来,也许可以对一些复杂的数学计算通过位运算很快速的得出结果 |