アセンブリ言語

アセンブリ言語とは、機械語を人間にわかりやすい形で記述した低水準言語です。

RSS

  • 受付中

    回答
    0

    システムコールの違いを教えてください。

    intel 32bit は、 int 0x80 という命令でシステムコールを発行していました。 これはわかりやすいですね。今は使われていないのかな? 64bitから(?)システムコールの呼び出しが変わったと思います。 1, syscall 2, sysenter 3, vsyscall (vdso) この3つですかね。 1番がよく使用するヤツです

    • 0評価
    • 70PV
    teratailが4週間前に アップデート
  • 解決済

    回答
    2

    アセンブリ言語の基本part3

    細々とした質問なので、複数質問することをお許しください。 アセンブリ言語で読めない箇所があります。 以前の質問で、以下のような例を示してもらいました(ありがとうございます。) .section .rodata xx: .quad subr .text subr: inc %rax

    • 0評価
    • 251PV
    rubato6809 rubato6809 4週間前に コメント
  • 解決済

    回答
    1

    アセンブリからのC関数呼び出しにスタックが必要な理由について

    こんにちは。現在アセンブリの勉強をしているのですが以下のコードが理解できません。 macOS, x86_64でのコードになります。 .global _main .section __TEXT,__text _main: // pushq $0 leaq _fmt(%rip), %rdi callq _puts //

    • 0評価
    • 55PV
    strike1217 strike1217 1ヶ月前に コメント
  • 解決済

    回答
    3

    アセンブリ言語で読めない箇所があります。

    ポインタを使用するプログラムです。 1 #include<stdio.h> 2 #include<ctype.h> 3 4 char *test(char *buf){ 5 char *p; 6 int c; 7 p = buf; 8 9 while(

    • 0評価
    • 435PV
    strike1217 strike1217 1ヶ月前に コメント
  • 解決済

    回答
    1

    ダイナミックリンク、遅延BIND、GOTを追う

    簡単なコードで考察します。 #include<stdio.h> int main(){ int c = 1000; printf("Technology%d\n", c); return 0; } アセンブリコードを一応載せておきます。 0000000000000550 <.plt>: 550: ff 35 b2

    • 0評価
    • 124PV
    strike1217 strike1217 1ヶ月前に コメント
  • 解決済

    回答
    2

    アセンブリ言語のセクション

    実験コードを載せます。 1 #include<stdio.h> 2 3 int a = 100; 4 int c; 5 6 int main(){ 7 const int i = 0; 8 char *buf = "you will make me happy"; 9 10

    • 0評価
    • 143PV
    rubato6809 rubato6809 1ヶ月前に コメント
  • 受付中

    回答
    1

    ライプニッツの公式について

    ライプニッツの公式にて円周率を近似せよという問題について これを10000回繰り返すアセンブリ言語について ソースコードを教えてください よろしくお願いします

    • -9評価
    • 81PV
    Orlofsky Orlofsky 1ヶ月前に 回答
  • 解決済

    回答
    2

    アセンブリ言語の基本 part2

    リンク内容 前回の続きで、基本を! sub命令についておかしな点があります。 私の持っている本にはこうあります。 subl -8(%rbp), %eax これはメモリのRBP-8 のアドレスのところにある値から、EAXの値を引いてその結果をEAXにいれます。 ところが、実際にやってみると、どうも逆のようです。 17

    • 0評価
    • 93PV
    strike1217 strike1217 1ヶ月前に ベストアンサー
  • 解決済

    回答
    2

    アセンブリ言語の基本

    疑問に思ったところがあります。 前回の質問とちょっと前に質問したものなんですが・・・ アセンブリのコンパイルができません。 スタック領域の順番が同じになってしまいます。 スタックの領域に入る変数の順序は決まってはいない。ということのですね。 レジスタに値を入れる場合、 ・即値をレジスタに直接代入する。 ・スタック領域のポインタをレジスタに入れる。

    • 0評価
    • 262PV
    rubato6809 rubato6809 1ヶ月前に コメント
  • 解決済

    回答
    2

    アセンブリのコンパイルができません。

    printf()のシステムコールを自作しました。 アセンブリ言語を勉強し始めたばかりです。 64 bit linux, Debian系です。intel CPU システムコール番号の確認 linux-4.7.3/arch/x86/entry/syscalls/syscall_64.tbl 0 common read

    • -1評価
    • 150PV
    strike1217 strike1217 1ヶ月前に ベストアンサー
  • 受付中

    回答
    1

    C++バブルソートをアセンブラに変換

    現在独学でx86-64 assembly language (アセンブラ)を学んでいます C++で書かれたこのコード(バブルソート)をx86-64 アセンブラで書ける人募集しています for ( i = (len­1) to 0 ) { swapped = false for ( j = 0 to i­1 ) if ( lst(j) > lst(j+1

    • -7評価
    • 130PV
    ralph0111 ralph0111 2ヶ月前に コメント
  • 解決済

    回答
    3

    ハンドアセンブラ

    objdump -d a.out の <main>セクションの一番最初は、 push %rbp → 0x55 となっていました。 binutilsのopcodesの中に、ニーモニックとレジストリの値の一覧を探しました。 // ニーモニック { "push", 1, 0x50, None, 1, { "push", 1, 0xff, 0x

    • 0評価
    • 248PV
    KSwordOfHaste KSwordOfHaste 3ヶ月前に 回答を編集
  • 解決済

    回答
    1

    アセンブルの仕組み

    gcc test.s アセンブリファイルを上記のようにすれば、実行ファイルを作成できるとおもいます。 このアセンブリ言語から実行ファイルへの変換の仕組みを教えてください。 昔は、ニーモニックから機械語への対応表を見ながら手打ちで16進数に直すという作業で行っていたようです。 ということは、gccも「対応表」をもっており、それを参照しながら、

    • 0評価
    • 197PV
    strike1217 strike1217 3ヶ月前に ベストアンサー
  • 解決済

    回答
    4

    macでOSを作る際の環境設定

    macで自分でosを作りたいのですが環境設定をどうすれば良いのかよくわからないので、教えてください。

    • -1評価
    • 291PV
    KSwordOfHaste KSwordOfHaste 4ヶ月前に ベストアンサー
  • 解決済

    回答
    1

    LinuxカーネルのソースでアセンブラなのにC言語風な構文について

    現在、linuxカーネルのv4.9.16のブート関係のソースコードを読んでいます。 arch/x86/kernel/head_32.S:535行目以降の下記の部分についての質問です。 535 ENTRY(early_idt_handler_array) 536 # 36(%esp) %eflags 537 # 32(%esp) %cs

    • 1評価
    • 584PV
    mao999 mao999 4ヶ月前に コメント
  • 解決済

    回答
    4

    アセンブリ言語について、複数の引数を一つの行にまとめて記述する方法を知りたい

    現在PIC16F84Aを使用してLEDを8つ点灯させる回路のコードを記述しているのですが、下記のようなコードを一行にまとめるような記述方法はないでしょうか? 該当のソースコード LEDON BCF PORTB,0 BCF PORTB,1 BCF PORTB,2

    • 0評価
    • 295PV
    hobi 退会済みユーザー 4ヶ月前に 回答
  • 受付中

    回答
    2

    x86のリアルモードから保護モードへの移行について

    現在、「作りながら学ぶOSカーネル 保護モードプログラミングの基本と実践」という本でOSの仕組みについて学んでいます。 そこで、x86プロセッサについてリアルモードから保護モードへ移行する際にCR0の最下位ビット(PEビット)を1にすることでCPUが保護モードとして動作するようになるという記載がありました。 しかし、その後の32ビットコード部分へのジ

    • 0評価
    • 180PV
    tacsheaven tacsheaven 4ヶ月前に 回答を編集
  • 解決済

    回答
    1

    macでアセンブリ言語を学びたい

    macでターミナルでC言語なファイルをコンパイルしてgdb -q ./a.outと入力したのですが gdb: command not found と出力されます なにかをダウンロードした方が良いのでしょうか?

    • 0評価
    • 268PV
    KSwordOfHaste KSwordOfHaste 5ヶ月前に ベストアンサー
  • 受付中

    回答
    1

    組み込みマイコンのソースでIARのアセンブラからGNUアセンブラへの移行

    前提・実現したいこと マイコン用のソースから実行ファイルを生成するツールをIARのEWARMからGNUツールチェーンに移行したいと思っています。 Cソースのコンパイルはなんとか通ったようなので次はアセンブラソース(*.s)の記述をGNUアセンブラ用に書き換えています。 ただ、そこでIAR側のMODULE ?cstartupという文とCSTACKとい

    • 0評価
    • 191PV
    fuzzball fuzzball 5ヶ月前に コメント
  • 解決済

    回答
    1

    GNUアセンブラで別ディレクトリにあるファイル内のシンボルを使用する方法

    前提・実現したいこと Makefileを利用しつつGNUツールチェーンで組み込み用のプログラムをコンパイルしようとしており、コンパイル→アセンブル→リンクのうちコンパイルは通ったのですが、アセンブラに初めて触れるためまったく解らずつまずいています。 アセンブラで、他のファイル内のモジュールをインポート? というか他のファイル内のシンボルを使用? する

    • 0評価
    • 195PV
    fuzzball fuzzball 5ヶ月前に ベストアンサー
1

タグ情報

  • あなたの順位

    -

  • タグ登録者数

    42

  • 総質問数

    47

  • 今週の質問数

    0

関連するタグ

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る