~ ~ ~ ~ ~ ~ ~ ~Se puede ingresar al ensamblador~ ~ ~ ~ ~ ~ ~ ~ ~ ~
EQU Byte Pointer
EQU Word PTR
EQU Deward Co., Ltd.
Segmento de código
Supongamos CS: código, DS: código
Organización 100H
Se inicia el programa principal
; NEWSTAR:
p>JMP Star
Par
NUM1 DW 0, 0
NUM2 DW 0, 0
NUM3 DW 0, 0
JGV4 DW 0, 0
Palabra de etiqueta YSF
YSF1 DB 0
YSF2 DB 0
JUV DB 0
UV DB 0
; Deje que DS:SI apunte al primer carácter válido.
Etiquetas cercanas
CLD
Empujando el hacha
OVERS1:
LODSB
CMP AL, ''
JZ Super 1
Aluminio pulido mecánicamente químico, 9
JZ Super 1
Diciembre Cuatro días
CMP AL, 13
Barril explosivo
Remojado en agua para ablandar
Emite una pestaña.
Cerca de etiqueta etiqueta
MOV·Al, 9 años
JMP Schott DISP
Salida con retorno de carro y avance de línea.
Etiqueta CRLF cercana
MOV Ayr, 13
Llamar a DISP
MOV Ayr, 10
; un personaje
Cerca de la etiqueta DISP
Empuja el hacha
Empuja DX
MOV, 2
MOV Ciudad
INT 21H
Popular DX
Barril explosivo
Remojado en agua para suavizar
; it Si es un operador.
Etiquetas ISYSF cercanas
CLD
LODSB
Llamar a ISJJ
JZ ISYSF1
Llame a ISII
JZ ISYSF1
4 de diciembre
ISYSF1:
Remojar en agua para suavizar
p>; Comprueba si es suma o resta.
Etiquetas ISJJ cercanas
CMP AL, " "
JZ ISYSF1
CMP AL, '-'
Remojar en agua para que quede suave
; comprueba si es multiplicación o división.
Cerca de la etiqueta ISII
CMP AL, '*'
JZ ISYSF1
CMP AL, '/'
JZ ISYSF1
CMP AL, "\"
remojado en agua para suavizar la salida de datos
; =10 número decimal
;cx=16hex
Etiqueta DOUT cercana
Hacha de empuje
Empuje BX
Empujar DX
Empujar BP
XOR BP, BP
DOUT1:
BP de la empresa
Empujar Ax
MOV Condado de Aix
XOR DX, DX
División CX
MOV·BX Hacha
Cañón de explosión
División CX
Push DX
BX MOV DX
O BX, Axe
JNZ DOUT1
DOUT2:
Cañón de explosión
Agregar AL, '0'
Aluminio pulido químicamente, '9' p>
JBE ·DOUT3
Agregar AL, 'A'-'9'-1
DOUT3:
Llamar a DISP
Diciembre BP p>
JNZ DOUT2
Presión arterial popular
DX popular
Pop·BX
Barril explosivo
Remojado en agua para suavizarlo
; Los datos de entrada se devuelven en DX:AX.
;CX=0 datos son 10.
;Los datos CX#0 son 16 números hexadecimales.
Etiquetas de fecha cercanas
Pulsar BX
Pulsar BP
Pulsar DI
XOR AX, AX p>
XOR DX, DX
Fecha 1:
MOV DIAX
LODSB
CMP AL, '0'
JB fecha 7
Aluminio pulido químicamente mecánicamente, '9'
JA fecha 6
Fecha 2:
AX, 0FH
SHL DI, 1
RCL DX, 1
Casa MOV·BX
MOV BP
SHL DI, 1
RCL DX, 1
SHL DI, 1
RCL DX, 1
p>
JCXZ Fecha 3
SHL DI, 1
RCL DX, 1
Jmp Fecha corta 4
Fecha 3: p>
BX·Gadi
ADC DX, BP
Fecha 4:
Agregar AX, DI
ADC DX, 0
Fecha JMP 1
Fecha 5:
Agregar AL, 9
Fecha JMP 2
Fecha 6:
JCXZ Fecha 7
CMP AL, 'A'
JB Fecha 7
CMP AL, ' F' p>
JBE Fecha 5
CMP AL, 'a'
JB Fecha 7
CMP AL, 'f'
p>JBE Fecha 5
Fecha 7:
MOV Eccles
4 de diciembre
O DI, DX
Popudi
Presión Arterial Popular
Pop·BX
Remojado en agua para suavizar
;Suma y resta los datos 1 y dato 2 según YSF1.
Etiquetas JSJJ cercanas
MOV AX, NUM2
MOV DX, NUM2 2
CMP YSF1, " "
JZ JSJJ1
SUB NUM1,AX
SBB num 1 2 DX
JMP corto JSJJ2
JSJJ1:
Agregar NUM1, AX
Convertidor analógico a digital NUM1 2, DX
JSJJ2:
Remojar en agua para suavizar
; Multiplica y divide los datos 1 y 2 según YSF1.
Etiqueta JSII1 cercana
MOV BX, desplazamiento NUM1
JMP corto JSII2_1
datos2 y datos3 según YSF2 Realizar multiplicación y división operaciones.
Etiqueta JSII2 cercana
MOV BX, desplazamiento 2
JSII2_1:
DB 66H
MOV Axe【 BX】
DB 66H
MOV·CX,【BX 4】
CMP YSF2, '*'
JNZ JSII2_2 p>
DB 66H
Imur CX
JMP corto JSII2_3
JSII2_2:
DB 66H
CWD
DB 66H
IDIV·CX
CMP YSF2,'/'
JZ JSII2_3
DB 66H
XCHG DX, AX
JSII2_3:
DB 66H
MOV[BX], Ax
Remojar en agua para suavizar
; Mostrar resultados
Cerca de la etiqueta XUJG
MOV AX, JGV4
MOV DX, JGV4 2
MOV CX, 10
CMP UV, 10
JZ Xujie
MOV CX, 16
XUJG0 :
Prueba DX, 8000 horas
JZ XUJG1
CMP UV, 10
JZ Xujie 2
p>Llamar a DOUT
XUJG2:
No AX
No DX
Agregar AX, 1
ADC DX, 0
Empujando el hacha
CMP UV, 10
JZ XUJG3
MOV·AL
p>Llamar DISP
MOV·AL, "("
Llamar DISP
XUJG3:
MOV·AL
Llamar a DISP
Barril de explosión
CMP UV, 10
JZ XUJG1
Llamar a DOUT
MOV·AL, ")"
Llamar a DISP
Remojar en agua para ablandar
XUJG1:
Llamar a DOUT
Remojar en agua para suavizar
; poner el resultado del cálculo en DX:AX.
Etiquetas JSJG cercanas
Llamar a JSJJ
MOV AX, NUM1
MOV DX, NUM1 2
Empapado en agua para suavizar
; Saque un dato de DS:SI.
Cargar etiqueta cercana
LODSB
CMP AL, "("
JZ carga 1
DIEZ febrero 4º
Promocionar CX
CX XOR CX
CMP UV, 10
JZ carga 0
CX Empresa ; obtener el número hexadecimal de 16:
Fecha de llamada; obtener los datos y ponerlos en DX:
Pop.
Remojado en agua. para hacer suave
LOADATE1:
Pulse el número 1; guarde los datos 1, los datos 2 y el operador.
Pulsar NUM1 2
Pulsar cantidad 2
Pulsar NUM2 2
Pulsar YSF
INC JUV p> p>
MOV JGV4, 0; el valor del resultado se borra
MOV JGV4 2, 0
realiza cuatro operaciones aritméticas
Cerca de SZYS tag
p>¿El primer carácter al llamar a ISYSF es un operador?
JZ SZYS2
Llame a LOADATE en lugar de buscar y guardar.
MOV NUM1, AX
MOV num 1 2 DX
SZYS1:
XOR AX, AX datos 2 borrados
p>
MOV NUM2,AX
MOV NUM2 2,AX
Llamar a ISYSF ¿El siguiente es el operador?
JZ SZYS3
JNZ SZYS6
SZYS2:
Empujando el hacha
MOV AX, JGV4 toma el resultado como Dato 1.
MOV NUM1, AX
MOV AX, JGV4 2
MOV num 1 2 AX
Barril explosivo
SZYS3:
MOV YSF1 Aluminio
Aluminio MOV YSF2
Llame ISJJ es suma y resta.
JZ SZYS4
Llame a LOADATE para obtener datos 2
MOV NUM2, AX
MOV NUM2 2, DX
Llame a jsii 1; multiplique y divida datos1 y datos2 según YSF1.
JMP szys 1; los resultados se guardan en los datos 1.
SZYS4:
Llame a LOADATE para obtener los datos 2 y guardarlos.
MOV NUM2, AX
MOV NUM2 2, DX
SZYS4_1:
Llamar a ISYSF
JNZ SZYS6
Llamar a ISJJ; ¿el operador 2 es suma y resta?
JNZ SZYS5 no gira
Empujando el hacha
Llama a JSJJ para sumar y restar los datos 1 y 2 según YSF1.
Barril explosivo; los resultados se almacenan en el dato 1.
MOV YSF1, AL; guardar nuevo operador
JMP SZYS4
SZYS5:
AL MOV YSF 2 guardar operador 2
p>
Llame a LOADATE para obtener los datos 3
MOV NUM3, AX
MOV NUM3 2, DX
Llame a JSII2 datos 2 y datos 3 según YSF2 realiza operaciones de multiplicación y división.
JMP szys 4_1; los resultados se guardan en los datos 2.
SZYS6:
MOV Ltd.
CMP AL, 13
JNZ SZYS9
SZYS7: p>
p>
Llamar a JSJG
CMP JUV, 0
JZ SZYS8
Principios de diciembre
Pop· YSF
POP NUM2 2
POP NUM2
POP NUM1 2
POP NUM1
Remojar en agua para suavizar
SZYS8:
CMP CL, ")"
JZ SZYS10
MOV JGV4, AX
MOV JGV4 2, DX
JNZ SZYS12
SZYS9:
CMP AL, ")"
JNZ SZYS11
Empresa SI
JMP SZYS7
SZYS10:
MOV NUM1, AX
MOV num 1 2 DX
JMP SZYS1
SZYS11:
Comité de Seguimiento Satélite
Remojado en agua para ablandarlo
SZYS12:
CanadianLabourCongressCanadian Labor Congress
Remojado en agua para suavizar
procesamiento del sistema digital
Cerca de etiquetas UV
Empuje SI< /p >
UVIL1:
LODSB
CMP AL,''
JZ UV 2
Aluminio pulido mecánicamente químico, 9
JZ UVIL2
CMP AL, 13
JZ UVIL
JNZ UVIL1
UVIL2:
SI MOV·BX
Pase de lista
JZ Ultraviolet 3
LODSW
Pase de lista
Pops
JNZ SZYS11
CMP AX, '01'
JNZ SZYS11
Empujar SI
MOV UV, 10
Nivel UV 3:
MOV Al, 13
MOV [BX-1]
UV 4:
Pops
CanadianLabourCongress Conferencia Laboral Canadiense
Remojado en agua para ablandar
Resultados predeterminados
Cerca de la etiqueta YVJG
MOV, 52H
INT 21H
MOV·Akers
MOV Ministro de Defensa
MOV AX, DS: [0CH]
MOV CS: JGV4, AX
MOV·AX
MOV CS: JGV4 2, AX
p>Push CS
Cámaras digitales populares
Push CS
Canciones pop
Remojar en agua para ablandar
;Guardar el resultado
Cerca de la etiqueta BCJG
MOV, 52H
INT 21H
MOV·Akers
MOV Secretario de Defensa
MOV AX, CS: JGV4
MOV DS: [0CH], AX
MOV AX, CS: J
GV4 2
MOV DS: [0EH], AX
Push CS
Cámara digital popular
Push CS
Canciones pop
Remojadas en agua para hacerlas suaves
Estrellas:
MOV SI, 81H
CLD
Rolling
JNZ STAR1
STAR0:
MOV DX, mensaje de compensación 1
JMP STAR 4
STAR1:
Llamar a YVJG
Llamar a Uvel
JB STAR0
MOV·Savisp Company
p>Llame a SZYS
MOV Savings Bank
MOV DX, mensaje de compensación 2
JB STAR4
Llame a CRLF
Llamar a XUJG
Llamar a BCJG
MOV DX, mensaje de compensación 3
Estrella 4:
MOV, 9
INT 21H
INT 20H
Velocidad de almacenamiento DW 0
MESS1 DB 13, 10, 'Sintaxis :',13,10
DB'JS lt;expresión gt[10]',13,10,'$'
¡Error 'MESS2 DB' en la expresión! $'
Mensaje 3 DB 13, 10, '$'
Fin del código
END NEWSTAR
Esta es una descarga de Internet El programa de cálculo puede realizar cálculos de suma, resta, multiplicación y división. El programa acepta
que es un número hexadecimal de 16.
Al ejecutar, la expresión de cálculo debe ir seguida inmediatamente después del nombre del archivo. Por ejemplo, el resultado de ejecutar en el símbolo del sistema es el siguiente:
c:\masm>js 3 2
cinco
c:\masm> js 6*7
2A
c:\masm gt;js 10-4
c
c:\masm gt; js 3/12
Sábado