Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/EmptyTag/162.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows 如何打印值num1、num2、num3中的所有数字以及rax中的长十六进制?_Windows_Winapi_Assembly_X86 64 - Fatal编程技术网

Windows 如何打印值num1、num2、num3中的所有数字以及rax中的长十六进制?

Windows 如何打印值num1、num2、num3中的所有数字以及rax中的长十六进制?,windows,winapi,assembly,x86-64,Windows,Winapi,Assembly,X86 64,作为注释,您可以将printf与%x”格式一起使用,或将%lx”与长型一起使用 或者您可以使用api您可以将它们传递给printf吗?如果没有,你必须自己做数字->字符串转换。 Console equ -11 extern GetStdHandle: PROTO extern WriteFile: PROTO extern ReadFile: PROTO extern ExitProcess: PROTO .data num1

作为注释,您可以将
printf
%x”
格式一起使用,或将
%lx”
长型一起使用


或者您可以使用api

您可以将它们传递给printf吗?如果没有,你必须自己做数字->字符串转换。
Console         equ     -11

extern  GetStdHandle:   PROTO
extern  WriteFile:      PROTO
extern  ReadFile:       PROTO
extern  ExitProcess:    PROTO

.data
num1        byte    ?
num2        word    ?
num3        dword   ?
num4        qword   ?
stdin       qword   ?
stdout      qword   ?
numWrite    qword   ?

.code
mainCRTStartup      PROC
    sub rsp, 40     ;reserve shadow space

    mov rcx, CONSOLE
    call GetStdHandle
    mov stdin, rax

    ;Storing information into memory
    mov num1, 6dh
    mov num2, 7361h
    mov num3, 7369206dh
    mov rax, 216e754620h

    mov rcx, stdout         ;parm1 = console
    lea rdx, num2           ;parm2 = ASCII
    ;parm3 = total #bytes to display
    mov r8, 15
    lea r9, numWrite
    mov qword ptr [rsp+32], 0
    call ReadFile


    add rsp, 40
    mov rcx, 0
    call ExitProcess
mainCRTStartup      ENDP
END