小编Ble*_*ose的帖子

如何在Windows下的汇编程序中编写hello world?

我想在Windows下编写基本的程序集,我正在使用NASM,但我无法正常工作.

如何在Windows上没有C函数的帮助下编写和编译hello world?

x86 assembly winapi nasm

84
推荐指数
8
解决办法
14万
查看次数

MIPS 指令 J 格式

我对以下MIPS代码有一个问题:如果第一条指令放置在0xFFFFFF00处的内存地址中,那么指令“j LoopEnd”的十六进制表示是什么?我不知道该怎么做。任何帮助将不胜感激。谢谢。

loop:
    slt $t9, $s3, $s2   
    bne $t9, $zero, end
    add $s4, $s2, $s3           
    srl $s4, $s4, 1
    sll $t0, $s4, 2             
    add $t0, $s0, $t0       
    lw $t1, 0($t0)
    slt $t9, $s1, $t1       
    beq $t9, $zero, bigger  
    addi $s3, $s4, -1 
    j loopEnd
loopEnd:
    j loop
Run Code Online (Sandbox Code Playgroud)

assembly mips

6
推荐指数
1
解决办法
6162
查看次数

为什么从AndroidManifest.xml删除权限不起作用?

没有任何权限,在Play商店有一个名为bodyweight fitness的应用程序 .它也可以在git hub上使用:https: //github.com/mazurio/bodyweight-fitness-android

我使用了来自git hub的文件并使用Android Studio自行编译了apk (无需更改文件).当我尝试安装自编译应用程序apk时,它告诉我它将使用INTERNET虽然Play商店应用程序没有.这个应用程序没有理由需要任何互联网连接.因此我从AndroidManifest.xml中删除了这一行

<uses-permission android:name="android.permission.INTERNET" />

编译和安装应用程序后,它仍然告诉我它将使用INTERNET.有人知道为什么以及如何删除此权限?

PS:我也问了开发人员,但我还没有回复.

更新:

  • 你是对的,它是从另一个部分添加的:crashlytics.
  • 而你也是对隐藏的许可是正确的.安装应用程序时会在应用程序详细信息中显示,当您单击"权限"按钮时,它会显示在Play商店中.

android user-permissions android-install-apk android-permissions android-studio

4
推荐指数
1
解决办法
2064
查看次数

NASM参数长度

我正在编写一个简单的程序来显示用户提供的名称.结果是我应该能够输入命令并获得预期的结果.

命令

./hello John
Run Code Online (Sandbox Code Playgroud)

结果

Hello, John.
Run Code Online (Sandbox Code Playgroud)


然而,当程序开始显示名称时,它却没有.我认为它与计算参数的长度有关.请你们看看我的代码并告诉我你的想法?

; hello.asm
;
; Assemble: nasm -f elf hello.asm
; Link:     ld -o hello hello.o
; Run:      ./hello <name>

section .data
    period:      db  ".", 10
    periodLen:   equ $-period

    helloMsg:    db  "Hello, "
    helloMsgLen: equ $-helloMsg

    usageMsg:    db  "Usage: hello <name>", 10
    usageMsgLen: equ $-usageMsg

section .text
    global _start

_start:
    pop eax                     ; Get number of arguments
    cmp eax, 2                  ; If one argument
    jne _help                   ; Not equal, show help + exit …
Run Code Online (Sandbox Code Playgroud)

linux x86 assembly nasm

3
推荐指数
1
解决办法
2014
查看次数

NASM与CMP和OR之间的区别

我有两个问题.第一个:'或'与'cmp'有什么区别?我已经看过了两个,看起来他们做了同样的事情.我的第二个问题:做什么

or al, al
Run Code Online (Sandbox Code Playgroud)

意思?它不应该一直返回真(如x == x)吗?

assembly nasm

3
推荐指数
1
解决办法
3479
查看次数

为什么gdb中的“info register ebp”不显示十进制数?

我正在使用 gdb 调试一个非常简单的代码:

mov ebp,eax     ; Save # of bytes read from file for later
Run Code Online (Sandbox Code Playgroud)

这是我的输出:

Breakpoint 2, Read () at hexdump1.asm:44
(gdb) info register eax
eax   0xd      13
(gdb) step
Read () at hexdump1.asm:45
(gdb) info register ebp
ebp   0xd      0xd
Run Code Online (Sandbox Code Playgroud)

为什么 gdb 显示 eax 为 0xd 13,而 ebp 显示为 0xd 0xd?

debugging x86 assembly gdb

1
推荐指数
1
解决办法
2637
查看次数