Tcl - Operadores

Un operador es un símbolo que le dice al compilador que realice manipulaciones matemáticas o lógicas específicas. El lenguaje Tcl es rico en operadores integrados y proporciona los siguientes tipos de operadores:

  • Operadores aritméticos
  • Operadores relacionales
  • Operadores logicos
  • Operadores bit a bit
  • Operador ternario

Este capítulo explicará los operadores aritméticos, relacionales, lógicos, bit a bit y ternarios uno por uno.

Operadores aritméticos

La siguiente tabla muestra todos los operadores aritméticos compatibles con el lenguaje Tcl. Suponga que la variable 'A' tiene 10 y la variable 'B' tiene 20, entonces -

Mostrar ejemplos

Operador Descripción Ejemplo
+ Agrega dos operandos A + B dará 30
- Resta el segundo operando del primero A - B dará -10
* Multiplica ambos operandos A * B dará 200
/ Divide el numerador por el numerador B / A dará 2
% Operador de módulo y resto de después de una división entera B% A dará 0

Operadores relacionales

La siguiente tabla muestra todos los operadores relacionales soportados por el lenguaje Tcl. Asumir variableA tiene 10 y variable B tiene 20, entonces -

Mostrar ejemplos

Operador Descripción Ejemplo
== Comprueba si los valores de dos operandos son iguales o no, si es así, la condición se convierte en verdadera. (A == B) no es cierto.
! = Comprueba si los valores de dos operandos son iguales o no, si los valores no son iguales, la condición se convierte en verdadera. (A! = B) es cierto.
> Comprueba si el valor del operando izquierdo es mayor que el valor del operando derecho, si es así, la condición se convierte en verdadera. (A> B) no es cierto.
< Comprueba si el valor del operando izquierdo es menor que el valor del operando derecho, si es así, la condición se convierte en verdadera. (A <B) es cierto.
> = Comprueba si el valor del operando izquierdo es mayor o igual que el valor del operando derecho, si es así, la condición se convierte en verdadera. (A> = B) no es cierto.
<= Comprueba si el valor del operando izquierdo es menor o igual que el valor del operando derecho, si es así, la condición se convierte en verdadera. (A <= B) es cierto.

Operadores logicos

La siguiente tabla muestra todos los operadores lógicos compatibles con el lenguaje Tcl. Asumir variableA contiene 1 y variable B tiene 0, entonces -

Mostrar ejemplos

Operador Descripción Ejemplo
&& Operador llamado lógico AND. Si ambos operandos son distintos de cero, la condición se vuelve verdadera. (A && B) es falso.
|| Operador OR lógico llamado. Si alguno de los dos operandos es distinto de cero, la condición se cumple. (A || B) es cierto.
! Operador llamado lógico NOT. Úselo para revertir el estado lógico de su operando. Si una condición es verdadera, entonces el operador lógico NOT hará que sea falsa. ! (A && B) es cierto.

Operadores bit a bit

El operador bit a bit trabaja en bits y realiza operaciones bit a bit. Las tablas de verdad para &, | y ^ son las siguientes:

pags q p & q p | q p ^ q
0 0 0 0 0
0 1 0 1 1
1 1 1 1 0
1 0 0 1 1

Suponga si A = 60; y B = 13; ahora en formato binario serán los siguientes:

A = 0011 1100

B = 0000 1101

----------------------

A&B = 0000 1100

A | B = 0011 1101

A ^ B = 0011 0001

Los operadores Bitwise admitidos por el lenguaje Tcl se enumeran en la siguiente tabla. Asumir variableA tiene 60 y variable B tiene 13, entonces -

Mostrar ejemplos

Operador Descripción Ejemplo
Y El operador AND binario copia un bit al resultado si existe en ambos operandos. (A & B) dará 12, que es 0000 1100
| El operador OR binario copia un bit si existe en cualquiera de los operandos. (A | B) dará 61, que es 0011 1101
^ El operador binario XOR copia el bit si está configurado en un operando pero no en ambos. (A ^ B) dará 49, que es 0011 0001
<< Operador binario de desplazamiento a la izquierda. El valor de los operandos de la izquierda se mueve a la izquierda el número de bits especificado por el operando de la derecha. Un << 2 dará 240, que es 1111 0000
>> Operador de cambio a la derecha binario. El valor de los operandos de la izquierda se mueve hacia la derecha el número de bits especificado por el operando de la derecha. A >> 2 dará 15, que es 0000 1111

Operador ternario

Mostrar ejemplos

Operador Descripción Ejemplo
? : Ternario ¿Si la condición es verdadera? Entonces valor X: De lo contrario valor Y

Precedencia de operadores en Tcl

La precedencia del operador determina la agrupación de términos en una expresión. Esto afecta cómo se evalúa una expresión. Algunos operadores tienen mayor precedencia que otros; por ejemplo, el operador de multiplicación tiene mayor precedencia que el operador de suma.

For example: x = 7 + 3 * 2; aquí, a x se le asigna 13, no 20 porque el operador * tiene mayor precedencia que +, por lo que primero se multiplica por 3 * 2 y luego se suma a 7.

Aquí, los operadores con mayor precedencia aparecen en la parte superior de la tabla, los que tienen la menor prioridad aparecen en la parte inferior. Dentro de una expresión, los operadores de mayor precedencia se evaluarán primero.

Mostrar ejemplos

Categoría Operador Asociatividad
Unario + - De derecha a izquierda
Multiplicativo * /% De izquierda a derecha
Aditivo + - De izquierda a derecha
Cambio << >> De izquierda a derecha
Relacional <<=>> = De izquierda a derecha
Y bit a bit Y De izquierda a derecha
XOR bit a bit ^ De izquierda a derecha
O bit a bit | De izquierda a derecha
Y lógico && De izquierda a derecha
OR lógico || De izquierda a derecha
Ternario ?: De derecha a izquierda