メモリ セル内の他のビットを乱すことなく、アドレス B3 のメモリ セルの最下位ビットに 1 を配置する一連の命令を書き込むことは可能ですか?
私が言及している機械語命令は、STOP、ADD、SWITCH、STOP、LOAD、ROTATE などです。
メモリ セル内の他のビットを乱すことなく、アドレス B3 のメモリ セルの最下位ビットに 1 を配置する一連の命令を書き込むことは可能ですか?
私が言及している機械語命令は、STOP、ADD、SWITCH、STOP、LOAD、ROTATE などです。
明確化: この質問はもともと C# とタグ付けされていました。再タグ付けしたのは OP ではないので、OP の意図が明確になるまでここに残します。
C# は高水準のプログラミング言語であり、マシン コードではなく IL にコンパイルされます。そのため、いいえ、特定のマシンコード操作を実行するためのサポートされているメカニズムはまったくありません (たとえあったとしても、言語間で移植することはできませんでした)。
整数ベースの型の演算子を使用して、高レベルのビット操作を実行できます。本当に必要な場合は、手動でビルドするか (ilasm)、実行時にDynamicMethod
/を介して IL を記述できますILGenerator
が、これらはマシン コードではなく CIL オペコードのみを扱います。
それを 1 で OR するとうまくいくと思います:
algo:
byte= [0xB3 のデータ]
byte = byte | 0x01
これは、8051 MCU 向けの開発では問題なく動作します。