@Coder100 well, in order for a number to be signed it must sacrifice a bit to represent the current sign(negative or positive), and since it sacrifices that bit, the highest number it can reach is halved, because of the reduced space. For example, if you have an unsigned Integer that is one byte, it can represent values 0 to 255, but a signed integer represents -127 to 127. Also, when you do a bit shift on a signed integer( >> or << ), the bits in the msb(most significant bit) will be used to fill in the bits that no longer hold data. This is really hard for me to explain, so Imma use pictures. Say again I have an unsigned integer that is one byte long. Let’s say it holds the value 255.

11111111 // 255

now when I shift this integer’s bits by 3, the top 3 bits will be emptied(zeroed) out.

11111111 >> 3 // shift bits over by 3
00011111 // now it’s this.

But if I used a signed integer, the first 3 bits will remain unchanged, because the msb( the first bit in this case) is a 1! So instead of the emptied out bits getting filled with 0s, they get filled with 1s!

11111111 >> 3 // shift bits by 3
11111111 // top three bits filled with the msb.

But if the top bit is a 0, then it will get filled with 0s.

01111111 >> 3 // shift bits 3 to the left
00001111 // emptied bits instead filled with 0s

If anything is still confusing, tell me. Idk if any of this makes sense.

## Hello Guys!

## It's what I promised!!

Ok, so today I'm going to introduce the theoretical stuff of C# (btw this

be useful later).Will## Variables

## What is a variable anyway?

Well, a variable is a reserved place in your (or in this case, repl's servers) computer's RAM (

RamdomAccessMemory), that can be edited.## Types of Variables.

This can only hold 2 values, true or false

This can hold multiple alphanumeric and special characters, such as

"hello world"

This can only hold a single alphanumeric character

This can hold a single numeric value

This can hold a single decimal value

## Constants

These are basically just normal variables but they

be editedcannot## ERRORS

Ah, everyone just

lovesthese! they are such apain in the behind## SYNTAX ERRORS

A syntax error is a:

## LOGIC ERRORS

These are basically mathematical errors or misspelling of variables

Example:

Well, it's not. If you look closer it's simple. You just made a capitalization error

## RUNTIME ERRORS

These are

nearlyundetectablesome signs are:

## Good Programming Practices

## - Indentation

## - Commenting

well that's all for now

~ EDIT

## WE HAVE A CLASSROOM NOW:

https://repl.it/classroom/invite/m4gHNul

~ANOTHER EDIT

## how is this so popular??

@Coder100 well, in order for a number to be signed it must sacrifice a bit to represent the current sign(negative or positive), and since it sacrifices that bit, the highest number it can reach is halved, because of the reduced space. For example, if you have an unsigned Integer that is one byte, it can represent values 0 to 255, but a signed integer represents -127 to 127.

Also, when you do a bit shift on a signed integer( >> or << ), the bits in the msb(most significant bit) will be used to fill in the bits that no longer hold data. This is really hard for me to explain, so Imma use pictures.

Say again I have an unsigned integer that is one byte long. Let’s say it holds the value 255.

now when I shift this integer’s bits by 3, the top 3 bits will be emptied(zeroed) out.

But if I used a signed integer, the first 3 bits will remain unchanged, because the msb( the first bit in this case) is a 1! So instead of the emptied out bits getting filled with 0s, they get filled with 1s!

But if the top bit is a 0, then it will get filled with 0s.

If anything is still confusing, tell me. Idk if any of this makes sense.