quarta-feira, 28 de novembro de 2012

ARQUTITETURA DE COMPUTADORES (COMPUTAÇÃO) CONVERSÃO ENTRE BASES

Pessoal peço desculpas por ter deixado de postar coisas neste blog desde Maio mas volto hoje com uma aula sobre Conversões entre bases.


Nas conversões temos:

Binário
Décimal
Hexadecimal
Octal

BINÁRIO PARA DECIMAL Para encontrar a correspondência entre um número de base cinco e um número na base decimal, basta fazermos o sumatório dos pesos de cada um dos algarismos em relação à base 10. Por exemplo, para o número 345 : "Soma dos valores vezes a sua posição relativa"
Exemplo:
Dígito 1
Dígito 0

3
4
=  3 x 51 + 4 x 50 = 15 + 4 = 19*
o valor 19 obtido está na base decimal porque o produto de 3 x 51 só resulta em 15 na base decimal; conversão semelhante poderia ser feita para outras bases, desde que as operações de multiplicação e soma fossem efetuadas adequadamente.


DÉCIMAL PARA BINÁRIO (Método das Divisões Sucessivas). Divide-se por 2 até que o quociente seja = a zero (0)
Ai tem uma imagem que vos servirá de exemplo:


  


BASES OCTAL E HEXADECIMAL 
Além das bases decimal e binária também temos mais 2 com interesse para a informática - a base octal ( 8 DÍGITOS 0-7 ) e a base hexadecimal ( 16 DÍGITOS 0-9 E A-F ). O interesse destas duas bases decorre do fato de possuírem um número de elementos base que é potência exata de 2 e que o homem tem dificuldade de trabalhar com o sistema binário

--> Base octal ( 8 digitos ) - 2^3 = 8
--> Base hexadecimal (16 digitos) - 2^4=16

A base hexadecimal é formada por 16 elementos e como a base decimal só possui 10 símbolos os restantes 6 elementos da base são represantados pelas seis primeiras letra do alfabeto : A, B, C, D, E , F

NA PROXIMA AULA DE ARQUITETURA AQUI NO BLOG CONTINUARÁ SOBRE O SISTEMAS ENTRE BASES

quinta-feira, 17 de maio de 2012

PHP MY ADMIN


Aqui tem em baixo uma breve explicação do PHP MY ADMIN, brevemente haverá mais.
download

terça-feira, 17 de abril de 2012

LINGUAGEM C (Aula 1)

C É UMA LINGUAGEM DE PROGRAMAÇÃO COMPILADA "CÓDIGO FONTE", OU SEJA, ESTRUTURADA, IMPERATIVA, PROCEDURAL, PADRONIZADA PELA ISO, CRIADO EM 1972 POR DENNIS RITCHIE , PARA DESENVOLVER O SISTEMA OPERATIVO UNIX.

QUAIS SÃO OS TIPOS DE DADOS NA LINGUAGEM C?


C TEM UM SISTEMA DE TIPOS SEMELHANTES AO DE ALGUNS DESCENDENTES DA LINGUAGEM ALGOL "SERÁ POSTA AQUI MAIS TARDE", TAL COMO PASCAL. ESTE TIPO DE PROGRAMAÇÃO POSSUÍ VÁRIOS TIPO PARA NÚMEROS INTEIROS DE VÁRIOS TAMANHOS COM E SEM SINAL, NÚMEROS DE PONTO FLUTUANTE, CARATCETERES E ESTRUTURAS (STRUCTS).C USA EXTENSIVAMENTE PONTEIROS , UM TIPO MAIS SIMPLES DE REFERÊNCIA QUE GUARDA O ENDEREÇO DE MEMÓRIA DA VARIÁVEL.




*O ponteiro pode ser desreferenciado, uma operação que busca o objecto que se encontra na morada da memória que o ponteiro possui, morada essa que pode ser manipulada através de aritmética de ponteiros. Durante o tempo de execução, o ponteiro é simplesmente uma morada de máquina tais como aquelas manipuladas em Assembly, mas em tempo de compilação possui um tipo complexo que indica o tipo do objecto para onde ele aponta, permitindo que se verifique o tipo de expressões, incluindo ponteiros. Os ponteiros são usados extensivamente em C. O tipo linha de texto de C é simplesmente um ponteiro para um vetor de caracteres e alocação dinâmica de memória, descrita abaixo, é efectuada através de ponteiros.

Os ponteiros em C possuem um valor reservado especial, NULL, que indica que não estão a apontar para uma morada. O uso desse valor como morada é muito útil na construção de várias estruturas de dados, mas causa comportamento não-definido (possivelmente uma falha de sistema) ao ser desreferenciado. Um ponteiro que possui o valor NULL é chamado ponteiro nulo. Os ponteiros são declarados (e desreferenciados) com um * (asterisco), portanto o tipo int* denota um ponteiro para número(s) inteiro(s). A linguagem C também fornece um tipo especial de ponteiros, o void*, que se traduz num ponteiro que aponta para um objecto de tipo desconhecido.

A linguagem C também tem apoio a nível de linguagem para vetores estáticas (de dimensão fixa) de tipos. As disposições de tipos podem parecer ter mais que uma dimensão apesar de serem tecnicamente disposições de disposições de tipos. Em memória, tais estruturas são posicionadas com as linhas uma depois da outra (a alternativa seria armazenar os dados em colunas, usado em outras linguagens). O acesso a disposições de tipos é feito através de ponteiros e aritmética de ponteiros; o nome da disposição é tratado como se fosse um ponteiro que aponta para o início da disposição. Em certas aplicações não é razoável usarem-se disposições de tipos de dimensão fixa e por isso a alocação dinâmica de memória pode ser usada para criar disposições de tipos de dimensão variável.

Como a linguagem C é regularmente usada em programação de baixo-nível de sistemas, há casos em que é necessário tratar um número inteiro como sendo um ponteiro, um número de ponto flutuante como sendo um número inteiro ou um tipo de ponteiro como sendo outro. Para estes casos, a linguagem C fornece a capacidade de "moldagem" (também denominado "conversão de tipo" ou casting), uma operação que, caso seja possível, força a conversão de um objecto de um tipo para outro. Apesar de ser por vezes necessário, o uso de conversões de tipo sacrifica alguma segurança oferecida pelo sistema de tipos.



CONTINUANDO O SISTEMA DESSES TIPOS SÃO:

int-->(INTEIRO) SERVE PARA ARMAZENAR~VALORES NUMÉRICOS INTEIROS.
      -PODE POSSUIR 16 BITS, 32 BITS OU 64 BITS;
      -short int -->DEVE POSSUIR O TAMANHO MÍNIMO DE 16 BITS;
       -long int -->DEVE POSSUIR O TAMANHO MÍNIMO DE 32 BITS;
       -long long int-->DEVE POSSUIR TAMANHO MÍNIMO DE 64 BITS;

char-->O TIPO CHAR OCUPA UM BYTE SERVE PARA ARMAZENAR CARACTERES OU NÚMEROS INTEIROS.

float-->SERVE PARA ARMAZENAR NÚMEROS DE PONTO FLUTUANTE , OU SEJA, COM CASA DECIMAIS.

double-->SERVE PARA ARMAZENAR NÚMEROS DE PONTO FLUTUANTE DE DUPLA PRECISÃO, NORMALMENTE TEM O DOBRO DO TAMANHO DO FLOAT E O DOBRO DA CAPACIDADE.

struct-->EM C PODEM SER USADAS ESTRUTURAS(CHAMADAS REGISTOS EM OUTRAS LINGUAGENS DE PROGRAMAÇÃO). AS ESTRUTURAS SÃO GRUPOS DE VARIÁVEIS ORGANIZADAS ARBITRÁRIAMENTE PELO PROGRAMADOR. UMA ESTRURA PODE CRIAR UM NOVO TIPO DE VARIÁVEL CASO TYPEDEF SEJA USADO EM SUA DECLARAÇÃO.


RELAÇÕES COM C++
A linguagem de programação C++ foi originalmente derivada do C para suportar programação orientada a objetos. À medida que as linguagens C e C++ foram evoluindo independentemente, a divisão entre as duas veio a aumentar. O padrão C99 criou um número de características que entram em conflito. Hoje, as principais diferenças entre as duas linguagens são:

    inline - em C++, funções em linha encontram-se no espaço global enquanto que em C encontram-se no espaço local. Por outras palavras, isso significa que, em C++, qualquer definição de qualquer função em linha (sem ser a respeito da sobrecarga de funções de C++) tem de estar em conformidade com a "regra de uma definição" da linguagem C++. Mas em C, a mesma função em linha pode ser definida de maneira diferente em diferentes arquivos (ou ficheiros)
    A palavra-chave bool, igual à usada em C++, em C99 necessita que se inclua o ficheiro-cabeçalho <stdbool.h> (_Bool está sempre disponível). Padrões anteriores de C não definiam um tipo booleano e vários (e incompatíveis) métodos foram usados para simular um tipo booleano

Algumas características originalmente desenvolvidas em C++ também apareceram em C. Entre elas encontram-se:

    protótipos de função (com declaração de tipos de parâmetros) e remoção do "int" implícito
    comentários de linha, indicados por //; comentários de linha terminam com um carácter de nova-linha
    a palavra-chave inline
    tipagem mais forte



legenda:
*-->TEXTO(S) RETIRADO(S) DA WIKIPÉDIA

FLUXOGRAMA (AULA 1)

FLUXOGRAMA É A QUASE A MESMA COISA QUE A PROGRAMAÇÃO EM PSEUDOCÓDIGO, MAS APRESENTA-SE PELA SEGUINTE MANEIRA NESTE EXEMPLO:

MARCAÇÃO DO PENALTI DE WOLFSWINKEL FRENTE AO HÉLTON.

                                                          INICIO
                                                                |
                                                                |
                                                       MARCAÇÃO
                                                         PENALTY
                                                                 |
                                   SE ENTRE            |                    OU SE É DEFENDIDA
                                   |         - - - --  A BOLA FOI -- - - -                  |
                                   |                      REMATADA                              |
                             É GOLO                                                         NÃO É GOLO
                                   |                                                                         |
 OU SE BATE NA BARRA OU POSTE E ENTRE                           OU SE
                                   |                               BATE NA BARRA OU POSTE E SAI
                                   |                                                                         |
                                É GOLO                                                           NÃO É GOLO
                                   |                                                                         |
                                   |                                                                         |
                                   |----------------------|- ------------------------------------------------.|
                                                                     |
                                                                     |
                                                                   FIM



ESTE É UM EXEMPLO DE UM FLUXOGRAMA EM LINGUAGEM DE PROGRAMAÇÃO.

VISUAL BASIC

VOU COMEÇAR POR COLOCAR AQUI AULAS DE PROGRAMAÇÃO EM VISUAL BASIC (VB), ENTRE OUTROS MÉTODOS DE PROGRAMAÇÃO.

COMO SE SABE VISUAL BASIC É UMA LINGUAGEM DE PROGRAMAÇÃO PRODUZIDA PELA MICROSOFT..
PARA SABEREM MELHOR A LINGUAGEM DE PROGRAMAÇÃO TERÃO DE APRENDER AS LINGUAGEM EM PSEUDOCÓDIGO E EM PASCAL QUE SERÃO POSTAS AQUI NO BLOG.
 NESTA LINGUAGEM DE PROGRAMAÇÃO OBTEM OUTRAS LINGUAGENS COMO:

VBSCRIPT
VISUAL BASIC.NET
VISUAL BASIC FOR APPLICATIONS

AQUI DEIXO-VOS UM EXEMPLO DE UM CÓDIGO FEITO NO VB.

Private Sub Form_Load()
    ' Executa uma simples caixa de mensagem e escreve "Olá mundo!"
    MsgBox "Olá mundo!"
End Sub

Private Sub Command1_Click()

On Error GoTo Trata
Dim A As Long, B As Long, C As Long
A = InputBox("Informe o 1° numero a somar : ", "Soma", "")
B = InputBox("Informe o 2° numero a somar : ", "Soma", "")
C = A + B
MsgBox C, vbInformation + vbOKOnly, "Soma"

Trata:
If Err.Number = 0 Then
Else
MsgBox "Ocorreu o seguinte erro : " & Err.Description & vbCrLf & "Código do erro : " & Err.Number, vbInformation + vbOKOnly, "Alerta!"
End If

End Sub


AS AULAS SERÃO POSTAS AQUI MUITO MAIS TARDE POIS VAMOS É COMEÇAR COM PSEUDOCÓDIGO QUE É MELHOR ASSIM.

LINGUAGEM EM PSEUDOCÓDIGO (AULA 1)

PSEUDOCÓDIGO É UMA MANEIRA GENÉRICA DE ESCREVER ALGORITMOS, USANDO UMA LINGUAGEM SIMPLES.

OS ALGORITMOS SÃO COMO O ÁBACO QUE FAZEM CÁLCULOS OU NESTE CASO EM PSEUDOCÓDIGO DEMONSTRA RESULATDOS COMO ESTE EXEMPLO:


VARIAVEIS
S,C,I,A,MD:Real;
INICIO
S ← 0;
C ← 0;
PARA I← 1 ATÉ 10 FAÇA
  INICIO
    Escreva ('Digite um número');
    LER (a);
    SE a >=0 ENTÃO
       INICIO
         S ← S+a;
         C ← C+1;
       FIM;
    FIM SE;
  FIM;
FIM PARA;
MD ← S/C;
ESCREVER ('A média é:', MD);
FIM.



FIQUEM ATENTOS AS PRÓXIMAS AULAS SERÃO MAIS INTERESSANTES.