プログラマーのための低レベルの問題やタスクを解決できる現代のプログラマー

1バイト物語に触発されて......

現代のプログラマーはコードをアートとして作成できますか? これらの問題を解決してみてください:)

さて、たとえば、書かれたような問題を解決してみてください- 単結晶について
したがって、2つのシングルバイトレジスタAとBがあり、これらがダブルバイトAB、スタック、現在のポイントからの条件付きジャンプ+-127命令、無条件-255を形成します。RAMに128命令、8Kメモリバンク。
レジスタコマンド-ビットシフト、追加
条件付き移行は、レジスタに海外に行くためのフラグがある場合になりますか?
海外に行くのは何ですか? これは、100から200を追加した場合です。バイト容量の制限を超える出口があります。 これは8ビットです

最初のタスクを想定します。 減算を実装します。 追加するだけです。
ABを作成し、結果をAに配置します。
最大127までの値の問題を解決します。
したがって、Aの最上位ビットを設定すると、-Aが得られます
(-A)+ B = AB
問題解決

255を決定できますか? そして、0xFFFFhですか?

最初のタスクに対処したとします。

そして、AとBの値を相互に変更する方法は?

掛け算はできますか? そして分割? 作業を容易にするために-符号なし+さらにレジスタを追加-DE

スタックを使用して1つのポイントに戻ることで分岐プロセスを行う方法を知っていますか?

しかし、cos()とsin()を実装する方法は? :)

Source: https://habr.com/ru/post/J27060/


All Articles