我昨天写了一个答案: 你见过或做过的最酷的黑客是什么? 而且我正在努力记住我的6502装配,我不能为我的生活记得如果分支如果不到...
:1
lda $C010
cmp #$80
bcc :1 ; branch if less than? I forget how to do that.
lda $C000
jsr $FDF0 ;output the accumulator value to the screen
Run Code Online (Sandbox Code Playgroud)
有人知道指令是什么吗?BNE和BEQ是平等的,BCC用于携带,而CMP基本上是一个SBC并影响进位,但我不确定它是否适用于那种情况.
我用谷歌搜索和google搜索谷歌是让我失败,或者你不能这样做.打开时会出现此警告-Wpedantic...
ISO C++禁止零大小数组'变量'[-Wpedantic]
我想关掉这一个警告,而不是所有迂腐的警告.通常,我只是添加,-Wno-xyz 但我找不到与该警告相关的标志名称.它没有列在任何地方.
迂腐警告特别之处在于你不能单独删除它们吗?
在我看来,当你编写一个C程序时,编译器知道源和目标平台(缺少一个更好的术语)并且可以优化它正在构建代码的机器.但在java中,编译器可以做的最好的是对字节码进行优化,这可能很好,但是jvm中仍然有一层必须解释字节码,并且字节码离最终机器架构的转换距离越远,要做到这一点,还有更多的工作要做.
在我看来,字节码优化器不会那么好,因为它丢失了原始源代码中可用的所有语义信息(可能已经被java编译器的优化器宰了.)
那么甚至可以用java编译器来达到C的效率吗?
在java中,他们说不要连接字符串,而是应该创建一个字符串缓冲区并继续添加它,然后当你完成所有操作时,使用toString()从中获取一个String对象.这是我没有得到的.他们说出于性能原因这样做,因为连接字符串会产生大量临时对象.但如果目标是性能,那么你就会使用像C/C++或汇编这样的语言.
使用java的论点是,购买速度更快的处理器比支付高级程序员编写快速高效的代码便宜得多.所以一方面,你应该让硬件处理效率低下的问题,但另一方面,你应该使用字符串缓冲来提高java的效率.
虽然我看到你可以做到这两点,但是使用java和stringbuffers,我的问题是你要么使用更快的芯片还是花费额外的时间编写更高效的软件,那么逻辑上存在缺陷.
我在我的网页的图片,我不希望它拿起鼠标点击(如浏览器固有的拖放或拖动选择它突出了浏览器中的图像.)
我可以对img或其父dom元素或页面做些什么来使浏览器在我点击图像时不做任何事情?我需要将mousedown用于其他东西,但浏览器似乎执行我的mousedown事件以及自己的拖动或突出显示,我不希望它.有任何想法吗?
我正在尝试找出运行应用程序的本地计算机的名称(或其他唯一标识特定计算机的方法).
我一直在用这个:
String hostname = java.net.InetAddress.getLocalHost().getHostName();
Run Code Online (Sandbox Code Playgroud)
哪个工作正常,但我刚刚在分析器中注意到它需要花费相当多的时间来执行它,所以我想知道是否有功能相似的东西运行得更快.
不必是主机名,只要它唯一标识机器就可以是任何东西.
java ×2
6502 ×1
assembly ×1
branch ×1
dom ×1
gcc ×1
hostname ×1
html ×1
javascript ×1
logic ×1
optimization ×1
performance ×1