すいません、VB4しかやってないんです、VBAはやったけど(ぼそ)

なのにどうしろと? くるみサイズの脳みそしかないあやしいジャンガリアンベムスターがさすらう贖罪蹂躙(ゴシックペナルティ)

目次

Blog 利用状況

ニュース


片桐 継 は  
こんなやつ

かたぎり つぐ ってよむの

大阪生まれ河内育ちなんだけど
東京に住んでたりするの
和装着付師だったりするの
エセモノカキやってたりするの
VB系言語が得意だったりするの
SQL文が大好きだったりするの

正体は会った人だけ知ってるの

空気読まなくてごめんなさいなの


わんくまリンク

C#, VB.NET 掲示板
C# VB.NET掲示板
わんくま同盟
わんくま同盟Blog



ネット活動

日々の雑記は ココ

着物関係こっち 着物関連Blog
mixiの鍵はこれだっ! in mixi
ぴくま同盟:理事 in ぴんくま
いやー、もうね、il||li _| ̄|○ il||li

記事カテゴリ

書庫

日記カテゴリ

ギャラリ

イベント活動

プログラムの活動

2010年7月30日 #

Connectあげたよ

MASMファイル(*.asm)の新規ファイル作成テンプレートを追加してほしい | Microsoft Connect
https://connect.microsoft.com/VisualStudioJapan/feedback/details/581367/masm-asm#

早速エントリw

だって、不便だなって思ったんだもん。

手をあげてナンボかもしれないし、使ってて、こうだと良いのになぁ、を声にするの、悪くないって思うんだ。

posted @ 14:35 | Feedback (0)

VisualStudio2010を手に入れたら

評価版を入れてた人は、プロダクトキーを入れると、そのまま使えまする

Hyper-V上のPCだったら、適当なタイミングでスナップショットをとっておいて、そこに戻してインストールすれば綺麗な環境でセットアップできるです

この二つ、知ってるのと知らないのとでは、苦労が凄く違うと思ったの。

posted @ 13:43 | Feedback (0)

2010年7月28日 #

MASMを動かしてみた~VisualStudio2008でのビルド規則追加変更方法

Native ニーモニックなプロジェクトは…
http://blogs.wankuma.com/tocchann/archive/2010/07/28/191731.aspx

MASMを動かしてみた~VisualStudioで
http://blogs.wankuma.com/esten/archive/2010/07/28/191730.aspx

のエントリの補足~

VisualStudio2008(Professional以上 もしくはExpressでSP1導入済み)の場合、

作成したC++(C)のプロジェクトのところで右クリックすると、メニューが出てくるの。

image

ここの「カスタム ビルド規則」ってのを選択すると、

 image

がでてくるから、これの*.asmを選択すればOK。

まっさらのプロジェクトにasmファイルを新規追加した時にも「カスタムビルド規則の変更」確認ダイアログがでるので素直に「OK」すれば大丈夫みたい。

posted @ 18:08 | Feedback (0)

MASMを動かしてみた~VisualStudioで

いろいろと試行錯誤orz くるしんだよ、べいべぇ。

なにしろ、VisualStudioのファイルテンプレにASMがいない

ので、作っちゃいけないのかなーと頭を抱えてたんだよねぇ。

でも、「拡張子asmでファイルをプロジェクトにいれて作って良い」ということに気付いたら、後は何とかなったw

というわけで、新規コンソールアプリ作って、ソースファイルフォルダに、hoge.asmを作成。

作ると「構成追加変更するよ」みたいなダイアログが出るので、そのままOKして適用してしまう。

; Filename: MasmHoge.ASM
.386
.MODEL flat, C
.CODE

MasmHoge PROC uses esi, arraychar:PTR

   mov esi, arraychar ; Load ESI with the address of the char array.

   mov BYTE PTR [esi], "H"      ; Since a char is 1 byte long, each
   mov BYTE PTR [esi+1], "e"    ; successive element can be accessed
   mov BYTE PTR [esi+2], "l"    ; by adding 1 more to esi.
   mov BYTE PTR [esi+3], "l"    ; by adding 1 more to esi.
   mov BYTE PTR [esi+4], "o"    ; by adding 1 more to esi.
   mov BYTE PTR [esi+5], " "    ; by adding 1 more to esi.
   mov BYTE PTR [esi+6], "W"    ; by adding 1 more to esi.
   mov BYTE PTR [esi+7], "o"    ; by adding 1 more to esi.
   mov BYTE PTR [esi+8], "r"    ; by adding 1 more to esi.
   mov BYTE PTR [esi+9], "d"    ; by adding 1 more to esi.
   mov BYTE PTR [esi+10], "!"    ; by adding 1 more to esi.

   ret

MasmHoge ENDP
END

これは、MasmHoge(char *)でそのアドレスに「Hello Word!」(Worldじゃない)を描く単純な処理w

でもって、呼び出し側

#include "stdafx.h"
/* Filename: CMAIN.C */ 

#include <stdio.h>

#ifdef __cplusplus
extern "C" {
#endif

void MasmHoge (char *);

#ifdef __cplusplus
}
#endif

char chararray[11] = "abc";

int _tmain(int argc, _TCHAR* argv[])
{
   printf ("%s\n", chararray);
   MasmHoge (chararray);
   printf ("%s\n", chararray);
}

変数配列chararrayが、「abc」から「Hello Word!」になれば成功

image

できたー♪

ひどりん、コメント&ヒントさんきうです。

posted @ 17:49 | Feedback (3)

MASMを動かしてみた

まだ文字列操作の勉強はこれから。まずは四則計算ってことで足し算をしてみた。

環境はお気楽に、VisualStudio2008 を使ってみることにする。

VisualStudio2008で、C++の新規プロジェクトを作成して、新規ソースを追加

#include "stdafx.h"
#include <iostream>

int _tmain(int argc, _TCHAR* argv[])
{
	
	int dwValue;
	dwValue = 5;

	__asm
   {
      mov eax, dwValue
      add eax, 100
      mov dwValue, eax
   }

	// 結果出力
	std::cout << dwValue;

	// DOSプロンプトが消えないように入力待ちにする
	std::cin >>  dwValue;
	return 0;
}

__asm{}の中がMASMのコード。

単純に、dwValueさんに100を足してるだけだから、5+100 で105が出てくるはず。

でもって、実行結果 ↓

image

さてと、足がかり確認。

色々と勉強開始しよう、胡桃の脳なりにorz

posted @ 14:47 | Feedback (4)