问题标签 [byte-shifting]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 帮助字节移位
我需要对文本文件进行字节移位。我对 perl 一无所知,但我在 perl 中找到了一段完美的代码,称为moz-byteshift.pl(文档)。这正是我想做的,但我需要在 C# 中完成。
下面是 perl 文件的源代码:
如果有人至少可以解释 perl 脚本是如何工作的,那就太好了。C# 中等效的示例代码会更好。=)
谢谢您的帮助。
c - 将 24 位 RGB 转换为 ARGB16
我必须读取 a24bpp Bitmap
并将每个像素从 转换RGB24
为ARGB16
。
我使用了以下代码,
但我没有得到所需的输出。
任何帮助将不胜感激。
java - 从 Java 中的 HEX 字符串创建 ISO-8859-1 字符串,移位位
我正在尝试将 HEX 序列转换为以 ISO-8859-1、UTF-8 或 UTF-16BE 编码的字符串。也就是说,我有一个看起来像这样的字符串:"0422043504410442"
这代表字符:"Test"
在 UTF-16BE 中。
我用来在两种格式之间转换的代码是:
这对我来说似乎很好,但我对此仍有两个问题:
- 有没有更简单的方法(最好没有位处理)来进行这种转换?
- 我该如何解释这条线:
int value = (high << 4) | low;
?
我熟悉位处理的基础知识,但完全不熟悉 Java 语法。我相信第一部分将所有位向左移动 4 步。尽管其余的我不明白,为什么它在这种特定情况下会有所帮助。
对于我的问题中的任何混淆,我深表歉意,如果我应该澄清任何事情,请告诉我。谢谢你。//Abeansits
java - 帮助目标 c - java字节移位
我在 Java 和 iPhone/objC 客户端之间发送数据。Java 客户端有一个已建立的中间件组件,我用它来测试新客户端与中间件的集成。
我对所有字节移位操作都有问题。Java 代码正在生产中,无法修改。由于双重似乎是最广泛的,我将发布它。
从 objC 发送:
Java 接收:
当我从 objC 发送 [[WVDouble alloc]initWithDouble:-13456.134]
java获得双倍5.53E-322
问题出在 objC 方面,因为 java 正在与其他开发环境一起生产。对于所有生产客户端,-13456.134 是转换后的结果。
这是 java 客户端使用的 sendDouble 代码:`
`
string - 如何将字符串转换为在 Go 中使用给定字符集编译的字节数组?
在java中,我们可以使用String的方法:byte[] getBytes(Charset charset)。此方法使用给定的字符集将字符串编码为字节序列,并将结果存储到新的字节数组中。
但是如何在 GO 中做到这一点?Go中是否有类似的方法可以做到这一点?
请让我知道。
c - 在 C 中采用 long 值并以相反顺序返回其字节的函数
我正在做一个作业,要求我编写一个函数,该函数需要一个长值并在 C 中以相反的顺序返回其字节,给出了函数的原型,即
long swapLong(long x)
我的代码如下所示:
如果函数的输入是 0x1122334455667788
它应该返回 0x8877665544332211
但是,当我用
结果是 0x44332211
似乎该功能只交换前半部分哦输入,我不知道后半部分会发生什么
我编写了另一个名为“ int swapInt( int x) ”的函数,使用与 swapLong() 类似的想法并且效果很好....所以我不知道我对 swapLong() 做错了什么
c - 这段代码是关于什么的?
好的..我知道问这样的问题听起来很烦人,但我真的不明白下面的代码 [advance_reg(int*)]。在代码的注释中,它说“/寄存器根据原始多项式(64,4,3,1,0); /”,我只是没有得到它。有人请给我有关此代码的提示吗?例如,为什么它会这样定义 adv_64 数组?我理解第一个 for 块移动了 27 次,每次一位。但为什么?这背后的数学原理是什么?此外,为什么要执行第二个 for 块?这些都与多项式(64,4,3,1,0)有什么联系?
design-patterns - 位移重复模式
我正在寻找一种方法来改变这种模式:
6 24 96
所有这些数字都是 2 的倍数,所以我想有办法改变它们
我想改变它们,所以我得到了模式,但它可能会在循环中不断重复
6,24,96,6,24,96...
编程语言不重要,概念很重要
c - 在 C 中移动数组的最佳方法?
我有一个包含值历史的数组,当添加一个新值时,我需要将所有以前的值向左移动一个位置,以释放最旧的值并为下一个值腾出空间。
通过使用 memmove,我可以想到两种方法:
或者通过交换指针:
两种方法之间是否存在性能差异,如果没有,建议使用哪一种?
assembly - 在汇编中不使用 DIV 进行除法
如何在不使用 DIV 指令但使用 shift 和 add 方法的情况下在 Assembly 中划分两个数字?
我用乘法做到了,这是我的代码:
第二个问题:我的老师告诉我们,有一个指令叫做 MOVZE 来做我在第 4 行和第 5 行所做的事情,但它不起作用?我使用emu8086模拟器。