miércoles, 14 de marzo de 2018

apuntes Arquitectura de un DBMS

Abrir enlace

prog valida:


import sys
from Tkinter import *
import tkMessageBox

def validar():

       if len(ent_usuario.get()) < 6 :
         tkMessageBox.showerror('Error', 'El usuario debe tener al menos 6 caracteres')
       if (ent_usuario.get()).isalnum() == FALSE :
         tkMessageBox.showerror('Error', 'El usuario debe tener solo numeros o letras')
       if len(ent_usuario.get()) > 12 :
         tkMessageBox.showerror('Error', 'El usuario no puede tener mas de 12 caracteres')
       if len(ent_usuario.get()) > 5 and len(ent_usuario.get()) < 12 and (ent_usuario.get()).isalnum() == TRUE:
           tkMessageBox.showinfo('usuarios aceptado', 'El usuario es correcto')


ventana= Tk()
ventana.title('Validar Password')
ventana. geometry('600x400')

vp = Frame(ventana) #estamos utilizando el objeto framevp.grid(column=0, row=0, padx =(50,50), pady=(10,10))
vp.columnconfigure(0, weigh=1)
vp.rowconfigure(0, weight =1)

etiqueta = Label(vp,text='Ingrese el nombre de Usuario: ')
etiqueta.grid(row=2, column=4, padx=(20,20), pady=(20,20))

usuario = ""ent_usuario = Entry(vp, width=12, textvariable=usuario)
ent_usuario.grid(row=2, column=5)


Boton = Button(vp, text='Validar usuario', command= validar)
Boton.grid(row=2, column=6, padx=(20,20), pady=(20,20))

#etiqueta2 = Label(vp, text='Ingrese el Password: ')#etiqueta2.grid(row=4, column=4, padx=(20, 20), pady=(20, 20))
#password = ""#ent_pass = Entry(vp, width=10, show="*", textvariable=password)#ent_pass.grid(row=4, column=5)
#Boton2 = Button(vp, text='Validar passw:', command=valida2)#Boton2.grid(row=4, column=6, padx=(20, 20), pady=(20, 20))

ventana.mainloop()


martes, 13 de marzo de 2018

lunes, 12 de marzo de 2018

colores del BIOS

https://en.wikipedia.org/wiki/BIOS_color_attributes

Aportación de Jonnatan Guzman J. programa de colores en Turbo....

BIOS EQU 10H
DOS EQU 21H
FIN EQU 4C00H
TEXTO EQU 3

PILA SEGMENT STACK
    DB 64 DUP('PILA ')
PILA ENDS


DATOS SEGMENT
    assume ds:DATOS,SS:PILA,cs:codigo


TITULO DB 'YO Y MI PAREJA '
colores db 5bh
DB 5FH
DB 5BH
DB 5FH
db 5BH
DB 5FH
DB 5BH
DB 5FH
db 5BH
DB 5FH
DB 5BH
DB 5FH
db 5BH
DB 5FH
DB 5BH
DB 5FH
db 5BH
DATOS ENDS
codigo segment
    COLO PROC FAR
    mov AX, DATOS
       mov ds,ax
       mov ax,texto
       int bios
       mov cx,16
       xor si,si
       bucle:
       push cx
       mov dx,si
       add dx,35
       mov dh,12
       call coloca
       mov al,[si+offset titulo]
       mov bl,[si+offset colores]
       call color
       pop cx
       inc si
     
       loopnz bucle
       mov ah,8
       int dos
       xor dx,dx
       call coloca
       mov ax,fin
       int dos
       colo endp
   
    color proc
        mov ah,9
        xor bh,bh
        int bios
        ret
        color endp
    coloca proc
        mov ah,2
        xor bx,bx
        int bios
        ret
        coloca endp
        codigo ends
    end colo

Aportación Emmanuel Horta, Lourdes Brito.....programa de colores...

BIOS EQU 10H
DOS EQU 21H
FIN EQU 4C00H

.DATA
    TITULO DB 'Agnax & Alizz '
    COLORES DB 5BH
    DB 5FH
    DB 5BH
    DB 5FH
    DB 5BH
    DB 00H
    DB 0F0H
    DB 00H
    DB 09CH
    DB 09FH
    DB 09CH
    DB 09FH
    DB 09CH
    DB 00H
    DB 0CH
   
.CODE
    INICIO PROC NEAR:
    MOV AX, @DATA
    MOV DS, AX
    ;Esta parte de aqui no es necesaria
    INT BIOS
   
    MOV CX, 15
       
        BUCLE:
            ;Ponemos esto para no agarrar basura
            MOV DX,SI
            ADD DX,35 ;columna
            MOV DH, 12 ;renglon
            CALL COLOCA
            MOV AL, [SI+OFFSET TITULO]
            MOV BL, [SI+OFFSET COLORES]
            CALL COLOR
            INC SI
        LOOPNZ BUCLE
       
        MOV AH, 0
        INT DOS
        CALL COLOCA
        MOV AX, FIN
        INT DOS
   
    COLOR PROC
    MOV AH, 9
    INT BIOS
    RET
       
    COLOCA PROC
    MOV AH,2
    INT BIOS
    RET

END INICIO




Programa Usuario en Python:

import sys
from Tkinter import *
import tkMessageBox

def valida():
       #long = len(ent_usuario.get()) # NOS CONTARA EL LARGO DE LA CADENA       #Y= (ent_usuario.get()).isalnum() #VERDADERO SI CUMPLE, FALSE SI TIENE CARACTERES ESPECIALES       #print(long)       #print(Y)
       if len(ent_usuario.get()) < 6 :
         tkMessageBox.showerror('Error', 'El usuario debe tener al menos 6 caracteres')
       if (ent_usuario.get()).isalnum() == FALSE :
         tkMessageBox.showerror('Error', 'El usuario debe tener solo numeros o letras')
       if len(ent_usuario.get()) > 12 :
         tkMessageBox.showerror('Error', 'El usuario no puede tener mas de 12 caracteres')

       if len(ent_usuario.get()) > 5 and len(ent_usuario.get()) < 12 and (ent_usuario.get()).isalnum() == TRUE:
           tkMessageBox.showinfo('usuarios aceptado', 'El usuario es correcto')

       #else:       #    tkMessageBox.showinfo("usuario correcto", 'TIENE USTED ACCESO')

     #  if ent_usuario.get() == 'YOLANDA' and ent_pass.get() == '123':     #       tkMessageBox.showinfo("usuario correcto",'TIENE USTED ACCESO')
     #  else:     #       tkMessageBox.showerror('Error', 'NO TIENE ACCESO')    #except ValueError:        #tkMessageBox.showerror('Error', 'introduzca un numero')ventana= Tk()
ventana.title('Validar Password')
ventana. geometry('400x400')

vp = Frame(ventana) #estamos utilizando el objeto framevp.grid(column=0, row=0, padx =(50,50), pady=(10,10))
vp.columnconfigure(0, weigh=1)
vp.rowconfigure(0, weight =1)

etiqueta = Label(vp,text='Ingrese el nombre de Usuario: ')
etiqueta.grid(row=2, column=4, padx=(20,20), pady=(20,20))

etiqueta2 = Label(vp,text='Ingrese el Password: ')
etiqueta2.grid(row=4, column=4 , padx=(20,20), pady=(20,20))

usuario=""
ent_usuario = Entry(vp, width= 12, textvariable=usuario)
ent_usuario.grid(row=2, column=5)


password=""
ent_pass = Entry(vp,width =10, show="*", textvariable=password)
ent_pass.grid(row=4,column=5 )

Boton = Button(vp, text='Validar', command= valida)
Boton.grid(row=50, column=5, padx=(20,20), pady=(20,20))






ventana.mainloop()