Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial programming >> MATLAB

Dominando Operadores MATLAB: Guia Completo de Operações Aritméticas, Lógicas e Bitwise

Operador é símbolo que instrui o compilador a realizar manipulações matemáticas ou lógicas específicas. O MATLAB opera principalmente em matrizes e arrays inteiros, então operadores funcionam tanto em dados escalares quanto não escalares. Tipos de operações elementares:

Operadores Aritméticos

Dois tipos de operações aritméticas:

Operadores de matriz e array diferem pelo símbolo ponto .. Adição e subtração são iguais para ambos. Tabela resumo:

NºOperador e Descrição
1

+

Adição ou unário plus. A+B soma valores. A e B devem ter mesmo tamanho, a menos que um seja escalar. Escalar pode ser adicionado a matriz de qualquer tamanho.

2

-

Subtração ou unário minus. A-B subtrai B de A. Mesma regra de tamanho.

3

*

Multiplicação de matriz. C = A*B é produto algébrico linear. Para A e B não escalares, colunas de A = linhas de B. Escalar multiplica matriz de qualquer tamanho.

4

.*

Multiplicação de array (elemento a elemento). A.*B. A e B mesmo tamanho, a menos que um seja escalar.

5

/

Divisão à direita de matriz (slash). B/A ≈ B*inv(A). Precisamente B/A = (A'\B')'.

6

./

Divisão à direita de array. A./B com elementos A(i,j)/B(i,j). Mesma regra de tamanho.

7

\

Divisão à esquerda de matriz (backslash). Se A quadrada, A\B ≈ inv(A)*B. Se A n×n e B vetor coluna n, X = A\B resolve AX = B. Aviso se A mal condicionada.

8

.\

Divisão à esquerda de array. A.\B com elementos B(i,j)/A(i,j). Mesma regra de tamanho.

9

^

Potência de matriz. X^p = X elevado a p (p escalar). Se p inteiro, potência por quadrados repetidos. Se negativo, inverte primeiro. Para outros p, usa autovalores/autovetores.

10

.^

Potência de array. A.^B com elementos A(i,j)^B(i,j). Mesma regra de tamanho.

11

'

Transposta de matriz (conjugada para complexos).

12

.'

Transposta de array (sem conjugação para complexos).

Operadores Relacionais

Funcionam em escalares e não escalares. Para arrays, comparam elemento a elemento, retornando array lógico do mesmo tamanho (1=true, 0=false).

NºOperador e Descrição
1

<

Menor que

2

<=

Menor ou igual

3

>

Maior que

4

>=

Maior ou igual

5

==

Igual a

6

~=

Diferente de

Operadores Lógicos

Dois tipos:

Operações Bitwise

Operadores bitwise trabalham bit a bit. Tabelas verdade para &, |, ^:

pqp & qp | qp ^ q
00000
01011
11110
10011

Exemplo: A = 60 (0011 1100), B = 13 (0000 1101):

A&B = 0000 1100
A|B = 0011 1101
A^B = 0011 0001
~A  = 1100 0011

Funções bitwise comuns:

FunçãoFinalidade
bitand(a, b)AND bitwise de inteiros a e b
bitcmp(a)Complemento bitwise de a
bitget(a,pos)Obtém bit na posição pos no array inteiro a
bitor(a, b)OR bitwise de a e b
bitset(a, pos)Define bit na posição pos de a
bitshift(a, k)Retorna a deslocado à esquerda por k bits (equivale a multiplicar por 2^k). k negativo desloca à direita (divide por 2^|k|) arredondando para -inf. Bits de overflow são truncados.
bitxor(a, b)XOR bitwise de a e b
swapbytesInverte ordem de bytes

Operações de Conjunto

Funções para união, interseção, teste de pertinência, etc.

NºFunção e Descrição
1

intersect(A,B)

Interseção de dois arrays; valores comuns a ambos, ordenados.

2

intersect(A,B,'rows')

Trata cada linha como entidade única; retorna linhas comuns, ordenadas.

3

ismember(A,B)

Array do tamanho de A com 1 onde elementos de A estão em B, 0 caso contrário.

4

ismember(A,B,'rows')

Trata linhas como entidades; vetor com 1 onde linhas de A estão em B.

5

issorted(A)

Retorna 1 (true) se elementos de A em ordem crescente; 0 caso contrário. A pode ser vetor ou cell array de strings 1xN ou Nx1.

6

issorted(A, 'rows')

Retorna 1 se linhas de matriz 2D A ordenadas; 0 caso contrário.

7

setdiff(A,B)

Diferença de conjuntos; valores em A não em B, ordenados.

8

setdiff(A,B,'rows')

Linhas de A não em B, ordenadas. Opção 'rows' não suporta cell arrays.

9

setxor

OU exclusivo de conjuntos.

10

union

União de conjuntos.

11

unique

Valores únicos em array.

MATLAB

  1. Operadores em C# – Guia Completo dos Operadores em C#
  2. Dominando Operadores em C++: Guia Completo com Exemplos Práticos
  3. Dominando Operadores em Programação C: Um Guia Abrangente
  4. Dominando Operadores em Python: Guia Completo
  5. Dominando Operadores Java: Tipos, Sintaxe e Exemplos Práticos
  6. Guia Abrangente de Operadores em C: Tipos, Funções e Exemplos
  7. MATLAB: Visão Geral Abrangente do Ambiente Líder em Computação Numérica
  8. Entendendo Variáveis no MATLAB: Fundamentos e Exemplos
  9. Comandos Essenciais do MATLAB para Computação Eficiente
  10. Entendendo Tipos de Dados no MATLAB: Guia Completo