Class makeBB

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Frame
                  extended by javax.swing.JFrame
                      extended by makeBB
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants

public class makeBB
extends javax.swing.JFrame

Author:
Administrator
See Also:
Serialized Form

Nested Class Summary
 class makeBB.BB
          Estrutura dos Blocos Básicos
 
Nested classes/interfaces inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
 
Nested classes/interfaces inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
 
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
protected  java.util.Vector<makeBB.BB> BBs
          Estrutura que armazena os blocos básicos
protected  java.util.Vector<java.lang.String> inst
          Vector que armazena todas as instruções do código em 3 endereços
protected  java.util.Vector<java.lang.String> PalavrasReservadas
          Estrutura que armazena todas as palavras reservadas que podem estar presentes nos codigos de 3 endereços
 
Fields inherited from class javax.swing.JFrame
accessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
makeBB()
          Cria uma nova instância do makeBB
 
Method Summary
 void addInst()
          funcao que adiciona no vector somente os comandos entre o begin e o end
 boolean contem(java.lang.String[] vars)
          metodo que verifica se dentro de um conjunto de variaveis existe uma das variaveis contidas no Vector att1
 void criaBBS()
          funcao que ira criar os blocos basicos
 int GetFile()
          metodo que serve para abrir o dialogo para selecionar o arquivo que contem o codigo de 3 enderecos a ser otimizado
 java.lang.String[] getPalavrasReservadas(java.lang.String inst)
          metodo que retorna um vetor que contem todas as palavras reservadas contidas na instrucao inst
 java.lang.String[] getTokens(java.lang.String inst)
          metodo que retorna um vetor que contem todos os tokens da instrucao passada como parâmetro
static void main(java.lang.String[] args)
           
 java.lang.String otimizacao1(java.lang.String inst)
          metodo que realiza as otimizacoes X + 0 = 0 + X = X, X - 0 = X, X * 1 = 1 * X = X, X / 1 = X, 2 * X = X * 2 = X + X, X / 2 = X * 0.5
 int otimizacao2()
          metodo que realiza a segunda parte das otimizacoes relacionadas as constantes que estao armazenadas nas variáveis
 java.lang.String PalavraAt(int pos, java.lang.String inst)
          metodo que retorna a palavra reservada que possui o caractere inicia na posicao pos da instrucao inst
 int PosicaoPalavraReservada(java.lang.String word, java.lang.String inst)
          metodo que retorna a primeira posicao que a string word aparece dentro da string inst
 int TotalPalavrasReservadas(java.lang.String inst)
          metodo que retorna o total de palavras reservadas contidas na instrucao inst de acordo com a lista de palavras reservadas PalavrasReservadas
 boolean verificaDesvio(java.lang.String instrucao)
          metodo que verifica se a instrucao atual possui um desvio condicional ou incondicional
 boolean verificaLabel(java.lang.String instrucao)
          metodo que verifica se a instrucao atual he um label
 
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
 
Methods inherited from class java.awt.Frame
addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setVisible, show, toBack, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
 

Field Detail

inst

protected java.util.Vector<java.lang.String> inst
Vector que armazena todas as instruções do código em 3 endereços


BBs

protected java.util.Vector<makeBB.BB> BBs
Estrutura que armazena os blocos básicos


PalavrasReservadas

protected java.util.Vector<java.lang.String> PalavrasReservadas
Estrutura que armazena todas as palavras reservadas que podem estar presentes nos codigos de 3 endereços

Constructor Detail

makeBB

public makeBB()
Cria uma nova instância do makeBB

Method Detail

PosicaoPalavraReservada

public int PosicaoPalavraReservada(java.lang.String word,
                                   java.lang.String inst)
metodo que retorna a primeira posicao que a string word aparece dentro da string inst


TotalPalavrasReservadas

public int TotalPalavrasReservadas(java.lang.String inst)
metodo que retorna o total de palavras reservadas contidas na instrucao inst de acordo com a lista de palavras reservadas PalavrasReservadas


getPalavrasReservadas

public java.lang.String[] getPalavrasReservadas(java.lang.String inst)
metodo que retorna um vetor que contem todas as palavras reservadas contidas na instrucao inst


getTokens

public java.lang.String[] getTokens(java.lang.String inst)
metodo que retorna um vetor que contem todos os tokens da instrucao passada como parâmetro


PalavraAt

public java.lang.String PalavraAt(int pos,
                                  java.lang.String inst)
metodo que retorna a palavra reservada que possui o caractere inicia na posicao pos da instrucao inst


otimizacao2

public int otimizacao2()
metodo que realiza a segunda parte das otimizacoes relacionadas as constantes que estao armazenadas nas variáveis


contem

public boolean contem(java.lang.String[] vars)
metodo que verifica se dentro de um conjunto de variaveis existe uma das variaveis contidas no Vector att1


otimizacao1

public java.lang.String otimizacao1(java.lang.String inst)
metodo que realiza as otimizacoes X + 0 = 0 + X = X, X - 0 = X, X * 1 = 1 * X = X, X / 1 = X, 2 * X = X * 2 = X + X, X / 2 = X * 0.5


addInst

public void addInst()
funcao que adiciona no vector somente os comandos entre o begin e o end


verificaLabel

public boolean verificaLabel(java.lang.String instrucao)
metodo que verifica se a instrucao atual he um label


verificaDesvio

public boolean verificaDesvio(java.lang.String instrucao)
metodo que verifica se a instrucao atual possui um desvio condicional ou incondicional


criaBBS

public void criaBBS()
funcao que ira criar os blocos basicos


GetFile

public int GetFile()
metodo que serve para abrir o dialogo para selecionar o arquivo que contem o codigo de 3 enderecos a ser otimizado


main

public static void main(java.lang.String[] args)
Parameters:
args - the command line arguments