小编nar*_*tra的帖子

逻辑AND运算符

我对逻辑运算符很困惑.我有这两行代码.这里numj都是int.我有一种情况,两个条件都满足,但我不知道为什么它不打印的价值j.任何人都可以指出错误吗?提前致谢.

if(k==1 && num%j==0)
    printf("%d",j);
Run Code Online (Sandbox Code Playgroud)

c boolean-logic boolean-operations

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

关于汇编语言的问题

我正在读"汇编语言的艺术"一书.我遇到了这两行.

the three byte encoding for mov ax, [1000] would be 0C6h, 00h,
10h and the three byte encoding for mov ax, [2000] would be 0C6h, 00h, 20h.
Run Code Online (Sandbox Code Playgroud)

任何人都可以告诉我mov ax,[1000]如何转换为oc6h,ooh,10h和mov ax,[2000]转换为0C6h,00h,20h.有人能告诉我计算结果吗?提前致谢.

编辑:我是汇编编程的先驱,请与描述一起解释.

x86 assembly x86-16

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

如何计算汇编代码所需的内存?

这是一个来自破碎的刺操作系统开发系列的段落.有3行代码.加载到第二行需要512个字节,到第三行需要514个字节.我们怎么算这个呢?如果可能请给我一个链接,我可以详细阅读.提前致谢.

在汇编语言中,我们可以很容易地超越512字节标记.所以,代码看起来很好,但只有一部分会在内存中.例如,coinider这个:

mov ax, 4ch
inc bx ; 512 byte
mov [var], bx ; 514 byte
Run Code Online (Sandbox Code Playgroud)

在汇编语言中,执行从文件顶部向下开始.但是,请记住,在内存中加载文件时,我们正在加载扇区.这些扇区中的每一个都是512字节,因此它只会将512字节的文件复制到内存中.

如果上面的代码被执行,并且只有第一个扇区被加载到内存中,它将只复制到512字节(inc bx指令).所以,虽然最后一条mov指令仍在磁盘上,但它不在内存中!那么处理器在inc bx之后会做什么呢?它将继续到514字节.由于这不在内存中,它将执行超过我们文件的结尾!最终的结果?崩溃.

x86 assembly operating-system

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

java中的regular-expression

我在java文件中使用此正则表达式来验证密码.

"^\w*(?=\w*\d)(?=\w*[a-z])(?=\w*[A-Z])\w*$"
Run Code Online (Sandbox Code Playgroud)

它显示错误:

Invalid escape sequence (valid ones are \b \t \n \f \r \" \' \\ )
Run Code Online (Sandbox Code Playgroud)

任何人都可以告诉我我在做什么错误吗?(我对正则表达式一无所知.我从谷歌那里复制了它.)

java regex passwords validation

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

有人可以解释一些简单的汇编代码吗?

我刚刚开始学习装配.这是来自gdb的转储,用于打印hello ranjit的简单程序.

Dump of assembler code for function main:
   0x080483b4 <+0>: push   %ebp
   0x080483b5 <+1>: mov    %esp,%ebp
   0x080483b7 <+3>: sub    $0x4,%esp
=> 0x080483ba <+6>: movl   $0x8048490,(%esp)
   0x080483c1 <+13>:    call   0x80482f0 <puts@plt>
   0x080483c6 <+18>:    leave  
   0x080483c7 <+19>:    ret    
Run Code Online (Sandbox Code Playgroud)

我的问题是:

  1. 为什么每次在程序启动时将ebp推入堆栈?运行此程序所需的ebp是什么?
  2. 在第二行为什么ebp被复制到esp?
  3. 我根本无法得到第三条线.我对SUB语法的了解是"sub dest,source",但是在这里如何将esp从4中减去并存储在4中?
  4. 这个值是什么"$ 0x8048490"?为什么它被转移到esp,为什么这个时间是esp在括号中关闭?它是否表示与没有括号的esp不同的东西?
  5. 下一行是对函数的调用,但这是什么"0x80482f0"?
  6. 什么是离开和退出(也许ret意味着返回lib c.)?

操作系统:ubuntu 10,编译器:gcc

linux assembly gdb

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

这个XML代码有什么问题?

我从一本书中得到了这段代码."sams在24小时内自学了android应用程序开发." 这是主菜单的布局.

   <TextView 
    xmlns:android=”http://schemas.android.com/apk/res/android” 
    android:layout_width=”fill_parent” 
    android:textSize=”@dimen/menu_item_size” 
    android:text=”test string” 
    android:layout_gravity=”center_horizontal” 
    android:layout_height=”wrap_content” 
    android:shadowRadius=”5” 
    android:gravity=”center” 
    android:textColor=”@color/menu_color” 
    android:shadowColor=”@color/menu_glow” 
    android:shadowDy=”3” 
    android:shadowDx=”3” />
Run Code Online (Sandbox Code Playgroud)

我在Droid画中尝试了这段代码.它显示错误"打开qoute是预期属性"{1}"与元素类型"xmlns:android""相关联.我是Android和Java的新手.请问有谁请告诉我如何解决这个错误?在此先感谢.(我在胜利7中唱歌.)

编辑:我明白了."这种报价造成了问题.我替换为".但现在它显示"错误没有布局".有人可以检查代码吗?

java xml layout android

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

解释此C#代码以登录youtube

我从stackoverflow中的某处获得了这段代码.我无法理解.它用于登录youtube.我是C#和OOPS的新手.所以任何人都可以向我解释几句话:

1)在第3行

 HttpWebRequest request = GetNewRequest("https://accounts.google.com/ServiceLoginAuth", cookies);
Run Code Online (Sandbox Code Playgroud)

HttpWebRequest是一个类,请求是一个对象.但为什么之后不使用New关键字呢?什么是"GetNewRequest"?这是一种方法吗?大多数时候我们使用New关键字的类的构造函数.那么我可以得出结论,我可以使用该类中的任何方法吗?没有必要使用new关键字和构造函数?

2)在第6行

Dictionary<string, string> parameters = new Dictionary<string, string>
Run Code Online (Sandbox Code Playgroud)

字典是类,参数是对象.但这是什么<string, string>?我从未见过参数可以传递给一个类.

3)在第7行

{
        {"continue","https%3A%2F%2Fwww.youtube.com%2Fsignin%3Faction_handle_signin%3Dtrue%26feature%3Dsign_in_button%26nomobiletemp%3D1%26hl%3Den_US%26next%3D%252F"},
        {"service","youtube"},{"uilel","3"},{"dsh","157212168103955870"},{"hl","en_US"},
        {"GALX","PTqcwpZb2aE"},{"pstMsg","1"},{"dnConn",""}, {"checkConnection","youtube%3A248%3A1"}, 
        {"checkedDomains","youtube"}, {"timeStmp",""}, {"secTok",""}, {"Email","username"}, {"Passwd","password"}, 
        {"signIn","Sign+in"}, {"PersistentCookie","yes"}, {"rmShown","1"}};
Run Code Online (Sandbox Code Playgroud)

我不明白这是什么?它不适合我在C#中读到的任何语法.这是我以前从未见过的.

完整的代码

public void Login()
{
    HttpWebRequest request = GetNewRequest("https://accounts.google.com/ServiceLoginAuth", cookies);
    request.Referer = "https://accounts.google.com/ServiceLogin?passive=true&continue=https%3A%2F%2Fwww.youtube.com%2Fsignin%3Faction_handle_signin%3Dtrue%26feature%3Dsign_in_button%26nomobiletemp%3D1%26hl%3Den_US%26next%3D%252F&uilel=3&hl=en_US&service=youtube";
    request.Host = "accounts.google.com";
    Dictionary<string, string> parameters = new Dictionary<string, string>{
        {"continue","https%3A%2F%2Fwww.youtube.com%2Fsignin%3Faction_handle_signin%3Dtrue%26feature%3Dsign_in_button%26nomobiletemp%3D1%26hl%3Den_US%26next%3D%252F"},
        {"service","youtube"},{"uilel","3"},{"dsh","157212168103955870"},{"hl","en_US"},
        {"GALX","PTqcwpZb2aE"},{"pstMsg","1"},{"dnConn",""}, {"checkConnection","youtube%3A248%3A1"}, 
        {"checkedDomains","youtube"}, {"timeStmp",""}, {"secTok",""}, {"Email","username"}, {"Passwd","password"}, 
        {"signIn","Sign+in"}, {"PersistentCookie","yes"}, {"rmShown","1"}};
    HttpWebResponse response = MakeRequest(request, cookies, parameters);
    response.Close();
}
Run Code Online (Sandbox Code Playgroud)

c# oop syntax

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

无法在C中以相反的顺序打印字符串

我写了这个简单的程序,以相反的顺序打印字符串,但它显示分段错误.

#include<stdio.h>
#include<string.h>
int main (int argc, char **argv)
{
        char *string;
        int n;
        printf("Enter a string\n");
        scanf("%s",string);
        printf("\n");
        n = strlen(string);
        printf("%d",n);
        while(n != 0)
        {
                printf("%c",string[n]);
                n--;
        }
        return(0);
}
Run Code Online (Sandbox Code Playgroud)

谁能解释我为什么会出现这种分段错误?操作系统:Ubuntu,compilor:gcc

c

-2
推荐指数
1
解决办法
705
查看次数