[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
把BX的值用自带的计算器转成10进制即可。
只支持32位系统。
附一贴:http://www.bathome.net/thread-43372-1-1.html
  1. %老刘制作-数值递增相加%
  2. %注:寄存器里的数为2进制,显示出来的为16进制%
  3. %BX的值为递增的值,AX为递增数.%
  4. @echo off
  5. set /p var=Please input a Number:
  6. >%TMP%\DEBUGASM.TMP (
  7. echo a100
  8. echo mov ax,0
  9. for /l %%a in (1 1 %var%) do (
  10. echo inc ax
  11. echo add bx,ax
  12. )
  13. echo.
  14. for /l %%a in (-%var% 1 %var%) do echo T
  15. echo.
  16. echo q
  17. echo q
  18. )
  19. <%TMP%\DEBUGASM.TMP DEBUG|Find /v ""|Find "CX"
  20. DEL /F %TMP%\DEBUGASM.TMP
  21. pause&exit/b
复制代码
1

评分人数

TOP

NEW VERSION
  1. @echo off %老刘制作-数值递增相加%
  2. IF /i "%PROCESSOR_ARCHITECTURE%" EQU "AMD64" (
  3. echo DEBUG和8086_ASM不支持64位的系统。
  4. Pause&Exit
  5. )
  6. %在此感谢netbenton斑竹的十进制转十六进制函数% set "d-h=setlocal enabledelayedexpansion&set/a dx=#a#&set xs=0123456789abcdef&(for /l %%z in (1,1,4) do set /a x%%z=dx%%16,dx=dx/16)&(for /f "tokens=1-4" %%1 in ("!x1! !x2! !x3! !x4!") do set hx=!xs:~%%4,1!!xs:~%%3,1!&(if !hx!==00 set hx=)&(for %%z in ("!hx!!xs:~%%2,1!!xs:~%%1,1!") do endlocal&set #a#=%%~z))"
  7. set /p NUM=Please input a Number:
  8. %d-h:#a#=NUM%
  9. For /f "tokens=2,3" %%a in (
  10. '^(ECHO E20:0 %NUM%^&MORE +13 "%~0"^)^|DEBUG^|FindSTR "0020:0000"'
  11. ) do set /a "num=0x%%a+0X%%b*0X100"
  12. Echo.%num%
  13. pause&exit/b
  14. A
  15. MOV AX,20
  16. MOV DS,AX
  17. MOV CL,BYTE PTR [0]
  18. INC DX
  19. ADD BX,DX
  20. LOOP 109
  21. MOV WORD PTR [0],BX
  22. INT 21H
  23. G
  24. D20:0 1
  25. Q
  26. Q
复制代码
1

评分人数

TOP

返回列表