みなさん、アセンブラって知っていますか?
私が20歳の時に出会ったソフト開発の最初の言語です。
8086をしていましたが、AIに聞いてみる
AI による概要
詳細
アセンブラ命令の例としては、START、END、DS、DCなどがあります。
アセンブラ命令の概要
アセンブラ命令は、アセンブラに指示を与える命令です。
アセンブラ言語は、機械語に近いプログラミング言語で、低水準言語と呼ばれます。
アセンブラ言語では、16進数と交換しやすい表現となる16進数が多く使用されます。
アセンブラ命令の例
START命令とEND命令は、アセンブル後に機械語に変換されると、姿を消し、メモリを占有しません。
DS命令とDC命令は、普通は何語かのメモリを占有することになります。
アセンブラ言語の特徴
アセンブリ言語は、コンピュータのCPUが直接解釈・実行できる機械語(マシン語)と正確に対応する命令語で構成されています。
アセンブリ言語を学習することで、CPUやハードウェアなどの挙動原理を詳しく理解できるため、コンピュータへの理解を深められます。
例文)
; プログラム1(sum2.asm)
org 100h ;オリジン(アドレス)を100hにする(擬似命令)
mov ax, val_a ;val_aの値をAXレジスタにロード
mov bx, val_b ;val_aの値をBXレジスタにロード
add ax, bx ;AXレジスタとBXレジスタの和をAXレジスタに設定
mov sum, ax ;AXレジスタの値をsumにストア
ret ;プログラム終了
val_a dw 0100h ;メモリ上の領域にval_aと名づけ、0100h(16bit)に初期化
val_b dw 0200h ;メモリ上の領域にval_bと名づけ、0200h(16bit)に初期化
sum dw 0 ;メモリ上の領域にsumと名づけ、0(16bit)に初期化
こんな感じで作っていました。
表示は画面のメモリがあって、そのメモリにドットで描く関数があり、それに渡していくと、画面表示ができる。そして、ファームウェアとの連携する関数があって、キーボード関数とか、それで画面とキー入力ができる。そして、RS232Cや音響カプラの通信とか難しいことばかり。
当初、MS-DOSが出てきて、PC9801が出た時に、本屋さんでテクニカルデータブックというものがありました。
これは割込みに引数を渡し、画面表示やそれぞれのファームウェアに接続できる手順みたいなもの。
これで私がマルチタスクを作りました。3000万で受けて、500万くらいで作ったのが最初の営業でした。OS/9より早かったのですよ。(笑)
当初はいろんな提案をしていました。
過去の栄光です。今は無理かもしれませんね。(泣)
こんな開発者がうちで育ってほしいものです。
私が20歳の時に出会ったソフト開発の最初の言語です。
8086をしていましたが、AIに聞いてみる
AI による概要
詳細
アセンブラ命令の例としては、START、END、DS、DCなどがあります。
アセンブラ命令の概要
アセンブラ命令は、アセンブラに指示を与える命令です。
アセンブラ言語は、機械語に近いプログラミング言語で、低水準言語と呼ばれます。
アセンブラ言語では、16進数と交換しやすい表現となる16進数が多く使用されます。
アセンブラ命令の例
START命令とEND命令は、アセンブル後に機械語に変換されると、姿を消し、メモリを占有しません。
DS命令とDC命令は、普通は何語かのメモリを占有することになります。
アセンブラ言語の特徴
アセンブリ言語は、コンピュータのCPUが直接解釈・実行できる機械語(マシン語)と正確に対応する命令語で構成されています。
アセンブリ言語を学習することで、CPUやハードウェアなどの挙動原理を詳しく理解できるため、コンピュータへの理解を深められます。
例文)
; プログラム1(sum2.asm)
org 100h ;オリジン(アドレス)を100hにする(擬似命令)
mov ax, val_a ;val_aの値をAXレジスタにロード
mov bx, val_b ;val_aの値をBXレジスタにロード
add ax, bx ;AXレジスタとBXレジスタの和をAXレジスタに設定
mov sum, ax ;AXレジスタの値をsumにストア
ret ;プログラム終了
val_a dw 0100h ;メモリ上の領域にval_aと名づけ、0100h(16bit)に初期化
val_b dw 0200h ;メモリ上の領域にval_bと名づけ、0200h(16bit)に初期化
sum dw 0 ;メモリ上の領域にsumと名づけ、0(16bit)に初期化
こんな感じで作っていました。
表示は画面のメモリがあって、そのメモリにドットで描く関数があり、それに渡していくと、画面表示ができる。そして、ファームウェアとの連携する関数があって、キーボード関数とか、それで画面とキー入力ができる。そして、RS232Cや音響カプラの通信とか難しいことばかり。
当初、MS-DOSが出てきて、PC9801が出た時に、本屋さんでテクニカルデータブックというものがありました。
これは割込みに引数を渡し、画面表示やそれぞれのファームウェアに接続できる手順みたいなもの。
これで私がマルチタスクを作りました。3000万で受けて、500万くらいで作ったのが最初の営業でした。OS/9より早かったのですよ。(笑)
当初はいろんな提案をしていました。
過去の栄光です。今は無理かもしれませんね。(泣)
こんな開発者がうちで育ってほしいものです。


※コメント投稿者のブログIDはブログ作成者のみに通知されます