代码文件:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Edit1: TEdit;
Button1: TButton;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
{初始化测试数据}
procedure TForm1.FormCreate(Sender: TObject);
begin
Edit1.Text := '004500FF';
end;
procedure TForm1.Button1Click(Sender: TObject);
var
a,b: Integer;
begin
{把 Edit1 中的十六进制字符串转换成整数}
b := StrToIntDef('$' + Edit1.Text, 0);
{通过汇编的方式把 b 赋给 a; 这相当于 a := b;}
asm
mov eax, b
mov a, eax
end;
{看看 a 的值}
ShowMessage(IntToHex(a, 8)); {004500FF}
end;
end.
窗体文件:object Form1: TForm1
Left = 0
Top = 0
Caption = 'Form1'
ClientHeight = 206
ClientWidth = 339
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
OldCreateOrder = False
OnCreate = FormCreate
PixelsPerInch = 96
TextHeight = 13
object Edit1: TEdit
Left = 104
Top = 56
Width = 121
Height = 21
TabOrder = 0
Text = 'Edit1'
end
object Button1: TButton
Left = 128
Top = 112
Width = 75
Height = 25
Caption = 'Button1'
TabOrder = 1
OnClick = Button1Click
end
end