小编Not*_*tGI的帖子

ARM 中的 PUSH 和 POP 命令

我试图了解 ARM 程序集中函数的开始和结束:

PUSH {R0-R2, LR}
POP {R0-R2, PC}
Run Code Online (Sandbox Code Playgroud)

看看 IDA 中的这段代码,这是我的理解(假设 SP 是 0x100):

PUSH R0 ; sp = 0xFC
PUSH R1 ; sp = 0xF8
PUSH R2 ; sp = 0xF4
PUSH LR ; sp = 0xF0
POP R0 ; sp = 0xF4
POP R1 ; sp = 0xF8
POP R2 ; sp = 0xFC
POP PC ; sp = 0x100
Run Code Online (Sandbox Code Playgroud)

看起来 PC 获得了 R0 的值,而它应该获得 LR 的值。
PC不应该得到LR的值吗?

stack arm

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

用javascript进行背景脚本消息传递

我正忙着在谷歌Chrome扩展程序内部进行通信,并使用以下指南:https://developer.chrome.com/extensions/messaging

它曾经工作,但我遇到了一个错误:

响应tabs.query时出错:TypeError:无法读取未定义的属性"id"

我比较了我的代码和谷歌Chrome代码,我似乎无法找到我的代码产生错误的原因:

chrome.tabs.query({active: true, currentWindow: true}, function(tabs) {
                chrome.tabs.sendMessage(tabs[1].id, {fen: request.needMove}, function(response) {
                    //console.log(response.farewell);
                });
            });
Run Code Online (Sandbox Code Playgroud)

这是我发送到的地方:

chrome.runtime.onMessage.addListener(
  function(request, sender, sendResponse) {
    console.log("recv FEN : " + FEN);
   FEN = request.fen;
   setCookie("FEN_SET", "true" , 1);
   setFEN(FEN);

  });
Run Code Online (Sandbox Code Playgroud)

我无法解决这个错误,无论我尝试它保持不变."无法读取未定义的属性"暗示"标签"是未定义的,据我所知,但我不明白为什么它在Google示例中有效,而在此处则不然.

另一个问:

如果我试图将它发送到标签[1]这是否意味着它是第二个位置的标签,还是我解释错了?

javascript jquery google-chrome communication google-chrome-extension

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

php preg_match在其他Web应用程序中不起作用

试图解析以下元素的值:

input type ="hidden"name ="csrf_token"value ="VUNht8fnmxmJXJIMassWW8SAwWKNJ3SC8POA4FtSqEKhG1rcoB3ZNqcPqa615tPsF_hzW0l4zDjSEHJYMz9Ogw ==">

元素周围的区域如下所示:

          <input type="hidden" name="redirect" value="">
          <input type="hidden" name="invite_code" value="">
          <input type="hidden" name="invite" value="">
          <input type="hidden" name="country" value="">
          <input type="hidden" name="csrf_token" value="325fTt31vp42rbt90gNqBT923_Z04snI5tmhCOAhSzpmL2mr3NBAho1zp6bEirZrLdQna5Ocm6_iC3OYdbBqLg==">

          <div>
Run Code Online (Sandbox Code Playgroud)

使用以下代码行:

preg_match("/csrf_token. value=.(.+==).>/", $result, $output_array);
Run Code Online (Sandbox Code Playgroud)

$ output_array保留为空,如http://www.phpliveregex.com/中的正则表达式是正确的.

我究竟做错了什么?

php regex preg-match

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