【编译原理笔记】My汇编语言
汇编语言是最简单的语言。
My汇编
-------------------asm-------------------------
@if:
[000] mov ret, 00
@else:
[000] mov ret, 01
@main:
[000] mov var1, 01020304
[001] mov bIsVar, 01
[002] cmp bIsVar, 01
[003] jl @if,
[004] jge @else,
源码
(01020304) > {var1}
(01) > {bIsVar}
if({bIsVar} < 01) {
(00) > {ret}
}else {
(01) > {ret}
}
;-----------------------------------------------------------
; this is toolchain auto generate code
; please don't edit or modify it
; auth by compiler
;-----------------------------------------------------------
@main-0004-if:
[000] push "3",
[001] call beep,
[002] ret ,
@main-000d-if:
[000] ret ,
@main:
[000] mov transkeynew, "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
[001] crd , 00A40000023F00
[002] crd , 00A4000002CC01
[003] cmp res, 9000
[004] jne @main-0004-if,
[005] crd asn, 00B0940C08
[006] crd , 00A40000023F00
[007] mov cck, "682218CDB5C6B52F37EE042C7CBA8D11"
[008] crd var0, 0084000004
[009] push cck,
[010] mov ax, %var0
[011] append ax, "00000000"
[012] push ax,
[013] call tripledes,
[014] mov var0, %ax
[015] mov ax, "0082000008"
[016] append ax, %var0
[017] crd , %ax
[018] cmp res, 9000
[019] jne @main-000d-if,
[020] crd , 800E000000
[021] crd , 80E00000073F008001F0FFFF
[022] mov ax, "80D4"
[023] append ax, "0100"
[024] append ax, "15"
[025] append ax, "09E0F0AA88"
[026] append ax, %transkeynew
[027] mov cmd, %ax
[028] crd , %cmd
[029] push "2",
[030] call beep,